帝国模板之家为广大用户提供专业、一站式建站服务。

网站开发

网站开发栏目,介绍前端、后台、服务器、数据库、建站工具等实用网站开发教程。

当前位置:首页 > 教程 > 网站开发 > 正文

yaf框架加载类报错Yaf_Loader::autoload(): Failed opening script的问题

帝国模板之家 2021-04-10 网站开发 评论

在yaf框架中使用spl_autoload_register函数自定义加载类。调用时会报错,下面来看看加载代码和报错提示。

class Bootstrap extends  Yaf_Bootstrap_Abstract {

        public function _initAutoLoad(){

            spl_autoload_register(function($class){
                if(strpos($class,'app\\dao')==0) {
                    $path = str_replace('app\\dao\\', 'dao/', $class);
                    $file = APP_PATH . '/application/' . $path . '.php';
                    if (file_exists($file)) {
                        Yaf_Loader::import($file);
                    }
                }

            });
        }

} 

报错提示

{"code":0,"message":"set_error_handler: 2:Yaf_Loader::autoload(): Failed opening script F:\\webserver\\www\\yaf\/application\/library\\app\\bo\\bo.php: No such file or directory in F:\\webserver\\www\\yaf\\application\\controllers\\Index.php on 15 line .","file":"F:\\webserver\\www\\yaf\\public\\index.php","line":16,"trace":"#0 [internal function]: {closure}(2, 'Yaf_Loader::aut...', 'F:\\\\webserver\\\\ww...', 15, Array)\n#1 [internal function]: Yaf_Loader->autoload('app\\\\bo\\\\bo')\n#2 F:\\webserver\\www\\yaf\\application\\controllers\\Index.php(15): spl_autoload_call('app\\\\bo\\\\bo')\n#3 [internal function]: IndexController->indexAction()\n#4 F:\\webserver\\www\\yaf\\public\\index.php(23): Yaf_Application->run()\n#5 {main}"}

解决方法:

配置php.ini文件,添加配置 yaf.use_spl_autoload=1

这世上无忧无虑的人,反而相对寿命会长点。

已有 位小伙伴发表了看法

欢迎 发表评论

  • 匿名发表

关于

帝国cms模板

网页插件

帝国模板之家 | www.moyouyouw.cn

本站所有模板/文章除标明原创外,均来自网络转载,版权归原作者所有,如果有侵犯到您的权益,请联系站长删除,谢谢! 寻找帝国cms模板首选帝国模板之家,用心做站,上线至今广受好评,值得信赖!

  • 交流群1:帝国cms交流群1
  • 交流群2:帝国cms交流群2
在线QQ 给我留言