此绝对路径成功地包含了我的文件httpapi.inc.php
require_once '/home/devel/wwwroot/nm/dev/http-api/http-api/src/httpapi.inc.php';
调用文件为:
调用者相关信息:
/devel/phi/dev/appcenter-head/appcenter/application/nm/index.php
呼叫者位置:
/home/devel/wwwroot/phi/dev/appcenter-head/appcenter/application/nm
现在,如何根据相对路径包含相同的文件,如下所示:
/devel/nm/dev/http-api/http-api/index.php
我必须“按原样”使用此路径,因为它是用户传递的配置选项。
发布于 2013-03-26 00:09:41
require()和include()应该相对于已配置的include paths和当前执行的脚本运行。因此,这应该是可行的:
require_once('src/httpapi.inc.php');不过,准确地说,在默认配置中,当前脚本的直接工作实际上被指定为包含路径之一。如果你把它弄得乱七八糟,它就不会起作用了。
使用.在include路径中允许相对包含,因为它意味着当前目录。
关于您最新的编辑,您的路径足够不同,因此使用完整路径或将/home/devel/wwwroot/nm/dev/http-api/http-api/添加到您的配置中并使用require_once('src/httpapi.inc.php')会更简单。
发布于 2013-03-26 00:12:06
您可以使用$_SERVER变量中的文档根目录:http://www.php.net/manual/en/reserved.variables.server.php
require_once $_SERVER['DOCUMENT_ROOT'] . '/nm/dev/http-api/http-api/src/httpapi.inc.php';发布于 2013-03-26 00:08:57
include "src/httpapi.inc.php";https://stackoverflow.com/questions/15619458
复制相似问题