更新到smarty到3.0,结果发现项目中的__autoload()不能用了,
原来是因为smarty改变了autoload的方式。

解决方法如下:

阿里云-推广AD

function autoload($className){
    if (file_exists(SITEROOT.’include/module/’.$className.’.class.php’))
    include SITEROOT.’include/module/’.$className.’.class.php’;
    else
    die(‘类’.$className.’文件不存在’);
}
spl_autoload_register(“autoload”);

用上面的方式还可以依顺序同时载入几个autoload方法
原理就是使用php的spl_autoload_register函数注册自义定的autoload函数。
这样就解决了冲突的问题。