Zend 自动加载类或者文件这块,Google、百度找了好多资料没看到方法,很多定义的方法都过期了,官方看了下全英文,看不太懂,但也没找到自己想要的东西。  
 这么大的Zend肯定有自动加载类 的方法吧,然后在后面的controllers里直接new对象,而不用include吧。

解决方案 »

  1.   

    框架都会有autoload类的,不必用include的。有兴趣可以看看理论知识
    PHP autoload机制详解
      

  2.   

    我自己使用的加载函数:define('PATH_INC','默认的class所在文件夹');
    define('PATH_MOD','模块类所在文件夹');
    function __autoload($class){
    $clspath = array(//某些特别的类路径
    'adodb' => 'adodb/adodb.inc.php',
    'spyc'  => 'spyc/spyc.php',
    );
    switch (true) {
    case preg_match('/^jc_/i',$class)://自己写的一些类,如:JC_Page,JC_Upload...
    $path = PATH_INC.$class.'.php';
    break;
    case preg_match('/^mod_/i',$class)://模块类,如:mod_user,mod_news...
    $path = PATH_MOD.$class.'.php';
    break;
    default:
    if (array_key_exists(strtolower($class),$clspath)) {
    $path = $clspath[strtolower($class)];
    } else {
    $path = PATH_INC.$class.'.php';
    }
    break;
    }
    if (file_exists($path)||array_key_exists(strtolower($class),$clspath)) {
    require_once($path);
    } else {
    exit($class.' class is not found :(');
    }
    }
    //直接使用类会自动调用__autoload函数找到并加载类文件,如:
    $user = new mod_user();
    $upload = new JC_Upload();
    echo JC_Page::$curpage;