23/06/2012

Problema com Autoload

Estou com um projeto onde tentei fazer utilização deste recurso do Autoload, fiz implementação da mesma forma que você apresenta, sendo que estou usando da seguinte forma:
<?php 

function __autoload($classes){ 

echo $classes.; 

$pastas = array(br.com.config, 
br.com.dao, 
br.com.facade, 
br.com.model, 
br.com.util 
); 

$path = get_include_path(); 

foreach ($pastas as $pasta) { 

$arquivo = $path.\\.$pasta.\\.$classes..class.php; 

if(file_exists($arquivo)){ 
require_once($arquivo); 
} 
} 
} 

?> 

Tenho um sistema como pacotes, porém sempre ele apresenta que a classe não foi encontrada, consegue visualizar algum problema, ou tem alguma sugestão do que possa ser?

A instancia da classe que esta sendo feita ele não pega, este autoload esta em um arquivo separado chamado Load, mas para teste eu coloquei a função dentro do próprio cadMenu.php é apresenta o erro que existe duas declarações de autoload, para remover uma das, logo entendo que esta vendo o mesmo, porém nem o echo é exibido, apagando o autoload do outro arquivo e deixando somente o do próprio cadMenu.php para teste ele apresenta o mesmo erro.

Já não sei mais o que fazer para isto funcionar, estou usando no projeto já as declarações como a abaixo,é funciona normal:
include_once br.com.model/MenuFacade.class.php;

OBS: Tenho outros projetos aqui que o AutoLoad funciona normal, já não sei mais o que fazer. Se puder ajudar agradeço muito...Tenho fiz o curso que você apresentou sobre Boas Práticas é ele funciona, porém neste projeto apresenta este erro e não da certo.

Desde já agradeço a atenção.

PHP

Jeroqueiroz

Respostas

23/08/2012

Ricardo Arrigoni

Uma dúvida, esse ponto é pra estar ai mesmo?
echo $classes.; 


Teria que mudar aqui tb:

$arquivo = $path.\\.$pasta.\\.$classes..class.php;
Responder Citar

23/08/2012

Ricardo Arrigoni

Uma dúvida, esse ponto é pra estar ai mesmo?
echo $classes.; 


Teria que mudar aqui tb:

$arquivo = $path.\\.$pasta.\\.$classes..class.php;
Responder Citar