POO: Olvideime de incluir unha clase, autocarga
PHP Maio 7th, 2009Antes de empregar unha clase (para instanciar un obxeto), a clase ten que estar definida. Como o habitual e ter cada clase nun arquivo, é necesario antes de instanciar o obxeto incluir o fichero coa definición da clase. Se hai moitas clases, isto pode ser un pouco lioso.
Un truco consisten en gardar cada clase nun ficheiro que teña por nome, o nome da clase e extensión PHP (a clase unhaClase podémola gardar no ficheiro unhaClase.php). PHP5 cando necesita empregar unha clase e non a atopa definida, dase unha segunda oportunidade e chama a función __autoload(). Se a función esta definida, execútase, e nela temos que ser quen de cargar o arquivo coa clase que se necesita. Podese facer algo así:
function __autoload($nome_da_clase) {
require_once($nome_da_clase . '.php');
}
$obx1 = new claseUnha();
$obx2 = new claseDuas();
Leave a Reply
You must be logged in to post a comment.