todas as paginas e criar um arquivo com a lista de classes, que faz esses includes ao criar objetos, e incluir esse arquivo no inicio de cada pagina.:arquivo autoload.php<?function __autoload($classe) { $classes = array( 'Cliente' => 'Cliente.php', 'ClienteDAO' => 'ClienteDAO.php', 'ClienteController' => 'ClienteController.php', ); require_once $classes[$classe];}?>e o index<?phprequire 'autoload.php';$cliente = new Cliente();$clienteDao = new ClienteDAO();echo "<pre>";print_r($cliente);print_r($clienteDao);echo "</pre>";?>o resultado deve ser :Figura 02 - Teste simples3- Utilizando o spl_autoload_registerPorem nas versoes mais novas do PHP, ja tem recursos mais modernos. existe uma funcao spl_autoload_register que recebe como param um array (nome_classe,metodo_que_inicializa).Porem p/ usar essa funcao o metodo deve ser static. Entao vamos modificar as classes e organizar os arquivos :Figura 03 - Arquivos em projeto do NetBeansAdicionamos o atributo static nas funcoes init para poder registra-las com o splClienteController.phpclass ClienteController { private $dao; public function __construct() { $this->dao = new ClienteDAO(); } public static function init() { __construct(); } }ClienteDAO.php<? final class ClienteDAO { private $cliente; private $listaCliente; private $arrObjCliente; public function __construct() { $this->cliente = new Cliente(); $this->listaCliente = array(new Cliente()); $this->arrObjCliente = new ArrayObject($this->listaCliente); } public static function init() { __construct(); }}?>Cliente.php<?phpfinal class Cliente { private $id; private $nome; private $email; function __construct() { $this->id = 0; $this->nome = null; $this->email = null; } public static function init() { __construct(); } public function getId() { return $this->id; } public function setId($id) { $this->id = $id; } public function getNome() { return $this->nome; } public function setNome($nome) { $this->nome = $nome; } public function getEmail() { return $this->email; } public function setEmail($email) { $this->email = $email; }}?>Autoload.php<?php//autoload.phpfunction __autoload($classe) { $classes = array( 'Cliente' => 'app/model/Cliente.php', 'ClienteDAO' => 'app/dao/ClienteDAO.php', 'ClienteController' => 'app/controller/ClienteController.php', 'Controller' => 'app/controller/Controller.php', 'Utils' => 'app/lib/Utils.class.php' ); echo "including $classes[$classe]<br>" ; require_once $classes[$classe]; spl_autoload_register(array($classe, 'init'));}?>index.php<?phprequire 'autoload.php';$cliente = new Cliente();$clienteDao = new ClienteDAO();$clienteController = new ClienteController();echo "<pre>";print_r($cliente);echo "<hr>";print_r($clienteDao);echo "<hr>";print_r($clienteController);echo "</pre>";?>e o resultado deve ser esse:Figura 04 - resultado com o autoloadp/ mostrar esses objetos de um jeito um pouco melhor vou chamar uma funcao mostraObjeto de uma nova classe Utils. Ate aqui nao tem problema criar uma classe com esse nome. mas se vc for usar algum framework, cuidado pois varios tem seu proprio Utils. Isso se resolve utilizando namespaces que vou mostrar mais pra frente. Vou tirar a linha do echo "including $classes[$classe]<br>" ; para nao ficar mostrando isso ao carregar as classes. Utils.class.php<?phpdefine('CHARSET', 'UTF-8');define('REPOSITORIO',$_SERVER['DOCUMENT_ROOT'] . '/files/');class Utils { private $styleBox; public static function init(){ __construct() ; } public function __construct() { $this->styleBox=" font-family: Tahoma, Geneva, sans-serif; background-color: #FFC; font-size: 9px; border: thin solid #03C; cursor: text; filter: Xray; font-weight: bold;"; } public function mostraObjeto($object) {// var_dump($object); echo "<pre style=\"".$this->styleBox."\">"; print_r($object); echo "</pre>"; echo "<hr size=\"1\" width=\"100%\">"; } function includeFile($file) { try { $fileX = $_SERVER['DOCUMENT_ROOT'] . $file; //die($fileX); if (file_exists($fileX)) { require_once $fileX; } else { //throw new Exception("Arquivo '$file' n&atilde;o encontrado"); throw new Exception("A operacao deste modulo '$file' ainda n&atilde;o foi implementada."); } } catch (Exception $ex) { echo $ex->getMessage(); } } function destaca($x, $y, $upper = false) { if ((strlen($x) > 0) && (strlen($y) > 0)) { $y = ($upper) ? strtoupper($y) : $y; $saida = str_replace($y, "<font