php类自动加载失败的解决办法:1、打开相应的PHP代码文件;2、添加“$class = str_replace("\\","/",$class);”代码即可。
本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。
如何解决php类的自动加载失败问题?
PHP 命名空间下的自动加载失败
文件在本地win系统下测试无异常,代码如下:
function stu_autoload($class){ if(file_exists($class.".php")){ require ( $class.".php"); }else{ die("unable to autoload Class $class"); } } spl_autoload_register("stu_autoload");
部署到Ubuntu服务器上异常,报错为 unable to autoload Class xxxxxx
根据报错,发现 $class 的值需要形如 stuApp\dao\StuInfo
才可行, 文件路径需要将 \
转义成 /
,因此添加一行代码即可。
$class = str_replace("\\","/",$class);
综上,修改后的自动加载代码如下:
function stu_autoload($class){ //路径转义 $class = str_replace("\\","/",$class); if(file_exists($class.".php")){ require ( $class.".php"); }else{ die("unable to autoload Class $class"); } } spl_autoload_register("stu_autoload");
推荐学习:《PHP视频教程》
以上がPHPクラスの自動読み込みに失敗する問題の解決方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。