此绝对路径成功包含我的文件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
我必须“按原样”使用此路径,因为它是用户传递的配置选项。
答案 0 :(得分:1)
require()
和include()
应相对于已配置的include paths和当前正在执行的脚本运行。所以,这应该有效:
require_once('src/httpapi.inc.php');
但是,要完全准确,当前脚本直接工作实际上被指定为默认配置中的包含路径之一。如果你已经破坏它将不起作用。
使用。在包含路径中允许相对包含,因为它意味着 当前目录。
关于您的最新修改,您的路径不同,只需使用完整路径或将/home/devel/wwwroot/nm/dev/http-api/http-api/
添加到您的配置并使用require_once('src/httpapi.inc.php')
即可。
答案 1 :(得分:0)
include "src/httpapi.inc.php";
答案 2 :(得分:0)
您可以使用$ _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';