io uso questo script semplicissimo e completamente funzionante.
	Codice PHP:
	
<?php
//restituisce un array contenente i file della cartella passata come argomento
function list_dir($dir)
{
    $handle = opendir($dir);
    if (!$handle)
        die("Impossibile aprire la directory: $dir");
    $d = array();
    while (false !== ($file = readdir($handle))) {
        if (substr($file, strlen($file)-4,4) == ".php")        //sceglie solo i file con estensione .php
            $d[count($d)] = $dir . "/" . $file;
    }
    closedir($handle);
    return $d;
}
//carica tutte le classi e le funzioni
$phpVersion_5 = (substr(phpversion(), 0, 1) >= 5);
//carico tutte le funzioni
if($client)
{
    $functions=list_dir("include/f/");
    for($i=0; $i<count($functions); $i++)
        { require_once($functions[$i]); }
}
else
{
    $functions=list_dir("../include/f/");
    for($i=0; $i<count($functions); $i++)
        { require_once($functions[$i]); }
}
    
//carico le classi e le interfacce
if($phpVersion_5)
{
    function __autoload($class_name) 
    {
        $c_client="include/c/".$class_name.".php";
        $c_admin="../".$c_client;
        //classi lato cliente
        if(file_exists($c_client))
            { require_once($c_client); }
        //classi lato amministratore
        else if(file_exists($c_admin))
            { require_once($c_admin); }
        else
            { die("Classe sconosciuta: $class_name"); }
    }
}
else
{
    //carico le classi parenti per prime
    //require_once("path_classe");
    
    //carico le classi lato cliente
    $classes=list_dir("include/c");
    for($i=0; $i<count($classes); $i++)
        { require_once($classes[$i]); }
    
    //carico le classi lato amministratore
    $classes=list_dir("../include/c");
    for($i=0; $i<count($classes); $i++)
        { require_once($classes[$i]); }
}
?>
 
Naturalmente devi modificare i percorsi.
Ti basta includere questo file in ogni pagina ed il gioco è fatto.