I had no idea at all about PHP or programming until I started reading your website! "Eu não tinha idéia alguma sobre PHP ou de programação até que eu comecei a ler o seu site!"
Scott

Classes e orientação a objetos

As classes são usados ​​para definir uma coisa mundo real, tal como uma pessoa ou um livro. Uma vez que a classe de coisa tem sido definida, então ele pode ser instanciado.

Uma classe de exemplo é a seguir.

Book Livro classe
{
title ; $ title privado;
author ; autor $ privado;
isbn ; private $ isbn;
reserved ; private $ reservado;

Reserve ( ) Reserve função pública ()
{
this - > reserved = true ; $ This -> reservado = true;
}
}

Como você pode ver a classe é definida usando a palavra-chave class seguida pelo nome da classe que pode ser qualquer palavra não reservada no PHP. As variáveis ​​e da função são todos definidos com o modificador de visibilidade .

Você vai notar que a variável pseduo $ this é usado na classe. Esta variável permite que as funções e variáveis ​​a ser chamado de dentro de uma classe.

Uma classe pode ser instanciado e chamado como mostrado abaixo usando o novo

Creates a instance of a class / / Cria uma instância de uma classe
book = new Book ( ) ; $ Livro = new Livro ();
Calls the reserve function of the book object . / / Chama a função de reserva do objeto livro.
book - > Reserve ( ) ; $ Livro -> Reserve ();

Classes também podem conter funções estáticas. A função estática não requer a classe a ser instanciada como um método de objeto normal faz. No entanto, um método estático não pode usar qualquer um dos objetos não estáticos variáveis.

Book Livro classe
{
title ; $ title privado;
author ; autor $ privado;
isbn ; private $ isbn;
reserved ; private $ reservado;
bookTypes = array ( ' Reference ' , ' Fiction ' ) ; private static $ bookTypes = array ('Referência', 'Ficção');

Reserve ( ) Reserve função pública ()
{
this - > reserved = true ; $ This -> reservado = true;
}

GetBookType ( $ index ) GetBookType public static function ($ index)
{
self : : $ bookTypes [ $ index ] ; retornar self :: [$ index] $ bookTypes;
}
}

Como você pode ver acima a função estática pode usar variáveis ​​de classe estáticos como $ bookTypes. Uma variável estática ou função pode ser acessada através da palavra-chave auto ou o nome da classe dentro da classe e apenas o nome da classe a partir de fora dela, como mostrado abaixo.

This prints Reference / / Referência Este impressões
Book : : GetBookType ( 1 ) ; eco Livro :: GetBookType (1);

Um valor padrão para uma variável de classe deve ser uma expressão constante, por isso não concatanation ou criação de novas classes!


Nenhum comentário foi fornecida.
imagem de segurança
Escrito por Dominic Skinner
Última Atualização: 2011/10/25 16:00:38