php require_once没有按照我想要的方式工作..相对路径问题
作者:互联网
我在分配require_once的相对路径时遇到问题.我确定这是一件很简单的事情,我没有看到……
文件夹目录结构
第1级:网站
第2级:包括
2级:上课
所以…
site / include / global.php< - 这是调用函数自动加载的地方
网站/班/ db.php中
当我尝试使用时
function__autoload($className)
{
require_once '../class/'.$className.'.php';
}
我得到:
警告:require_once(../ class / db.php)[function.require-once]:无法打开流:没有这样的文件或目录
致命错误:require_once()[function.require]:无法打开所需的’../class/db.php'(include_path =’.; ./ includes; ./ pear’)
我究竟做错了什么?如果我将global.php放在类文件夹中,它会正常工作,所以我假设我对导致问题的相对路径的理解很差.
谢谢
解决方法:
require(_once)和include(_once)相对于第一个脚本的路径工作,即实际调用的脚本.
如果您需要在包含或必需的文件中需要某些内容,并且希望相对于该文件工作,请使用
dirname(__FILE__)."/path/to/file";
或者@Arkh指出,从PHP 5.3开始
__DIR__."/path/to/file";
标签:php,require-once 来源: https://codeday.me/bug/20190722/1498433.html