Desenvolvimento - PHP
PHP5 + OOP - Parte 1 - Autoloading
Veremos nessa série de breve artigos como lidar com OOP com PHP. Nesta primeira parte: Autoloading.
por Aguinelo PedrosoPara aqueles desenvolvedores (maioria, inclusive eu) que implementam uma classe por arquivo e no fim das contas acabam com vários includes por script existe agora um recurso chamado Autoload, este recurso permite que o próprio PHP inclua dinamicamente as classes de acordo com a necessidade durante o uso.
Para tanto basta criar a seguinte função no início de cada arquivo.
1. function __autoload($class) 2. { 3. 4. require_once($class.".php"); 5. 6. }
A utilização da função é simples, mas cuidado, existem alguns poréns.
Citando meu exemplo que uso o seguinte padrão NomeDaClasse.class.php, ou seja, nome da classe com letra maiúscula seguido de .class e a extensão .php a função ficaria assim:
1. function __autoload($class) 2. { 3. 4. require_once($class.".class.php"); 5. 6. }
Lembrando que o nome da classe e o primeiro nome do arquivo são idênticos (igual ao Java).
Como eu costumo criar todas as classes dentro de um diretório class alocado dentro do diretório includes é necessário passar o caminho completo de onde a função __autoload deve buscar as classes, ficando assim:
1. function __autoload($class) 2. { 3. 4. require_once("includes/class/".$class.".class.php"); 5. 6. }
Mesmo com estes poréns é muito mais fácil e produtivo o uso desta função, pois deixamos de nos preocupar com vários includes, passando este trabalho para o Interpreter do PHP.
A única exigência é que o arquivo que contém a classe deve estar igual ao nome da classe.
Qualquer dúvida basta deixar um comentário abaixo, acessar meu blog www.aguinelopedroso.com ou me contatar pelo e-mail contato@aguinelopedroso.com.