Características:
• Velocidade e robustez
• Estruturado e orientação a objeto
• Portabilidade - independência de plataforma - escreva uma vez, rode em qualquer lugar;
• Tipagem fraca
• Sintaxe similar a Linguagem C/C++ e o PERL
Exemplo da sintaxe
"2") // se a variavel $x igual a 2 OU maior que 2
{
echo 'Olá mundo!'; // escreve "Olá mundo!"
} else { // Se não.
print('Adeus mundo!'); // escreve 'Adeus mundo!', print pode ser usado com ou sem parênteses.
}
?>
PHP 5
Em junho de 2004 foi lançada a versão 5 do PHP, introduzindo um novo modelo de orientação a objeto, como por exemplo:
• Reformulação dos Construtores e adição de Destrutores
O construtor
O destrutor
• Visibilidade de acesso
• Abstração de objeto
• Interfaces de objetos
O tratamento de objetos do PHP foi completamente reescrito, permitindo um desempenho melhor e mais vantagens. Enquanto na versão anterior era preciso muito esforço para atender à orientação a objetos e aos padrões de projectos (alguns não eram possíveis), o PHP 5 veio para sanar essa deficiência. Ainda sofre nesse sentido, contudo, por problemas devido a ser uma linguagem de tipagem fraca.
Indução de tipo
Nesse sentido, foi adicionada uma característica chamada de indução de tipo, de acordo com a qual podemos ter uma certa tipagem quando passamos objetos aos parâmetros de uma função (ou método), algo inconcebível na versão anterior.
Por exemplo:
Visibilidade
A visibilidade de uma propriedade ou método pode ser definida com os seguintes modificadores de acesso: public, protected ou private. Itens declarados como públicos podem ser acessados pelo objeto (instância da classe). Membros protegidos estão acessíveis às classes filhas (herdadas). A visibilidade privada limita a apenas a classe que define o atributo ou método.
Por exemplo:
class ClassePai
{
private $atributoPrivado;
protected $atributoProtegido;
public function imprimePai()
{
$this->atributoPrivado = 'Privado';
echo $this->atributoPrivado;
}
}
class ClasseFilha extends ClassePai
{
public $atributoPublico;
public function imprimeFilho()
{
$this->atributoProtegido = 'Protegido';
echo $this->atributoProtegido;
}
}
$obj = new ClasseFilha();// Estanciando a classe
echo $obj->imprimePai(); // Exibe na tela 'Privado'
echo $obj->imprimeFilho(); // Exibe na tela 'Protegido'
// É permitido o acesso pelo objeto aos atributos públicos:
$obj->atributoPublico = 'Sobrenome: Muzzy';
echo $obj->atributoPublico; // Exibe na tela 'Sobrenome: Muzzy'
Outros exemplos
Ler dois valores registrados em variáveis e indicar o maior
$valor2) {
echo "A variável $valor1 é maior que a variável $valor2";
} else if ($valor2 > $valor1) {
echo "A variável $valor2 é maior que a variável $valor1";
} else {
echo "A variável $valor1 é igual à variável $valor2";
}
?>
Mostrar na página os dez primeiros números