>백엔드 개발 >PHP 문제 >PHP 클래스 자동 로딩 실패 문제를 해결하는 방법

PHP 클래스 자동 로딩 실패 문제를 해결하는 방법

藏色散人
藏色散人원래의
2021-09-21 09:17:152366검색

php类自动加载失败的解决办法:1、打开相应的PHP代码文件;2、添加“$class = str_replace("\\","/",$class);”代码即可。

PHP 클래스 자동 로딩 실패 문제를 해결하는 방법

本文操作环境: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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.