致命错误:require_once() 使用绝对路径

Posted

技术标签:

【中文标题】致命错误:require_once() 使用绝对路径【英文标题】:Fatal error: require_once() using absolute path 【发布时间】:2013-05-29 20:37:09 【问题描述】:

我有以下文件:

/home/public_html/grid.php

在其中一个具有绝对路径的 require_once 有效:

require_once('/home/public_html/include/config.php');

那么,为什么我要把这个文件移动到另一个目录,

/home/public_html/newfolder/grid.php 

它停止工作并返回一个

致命错误:require_once() [function.require]: 无法打开所需的 './include/config.php' (include_path='.:/usr/lib/php:/usr/local/lib/php')在 /home/public_html/include/config.php 第 2 行

【问题讨论】:

看起来问题过于本地化了 【参考方案1】:

错误信息与你所说的相矛盾。

打开失败需要'./include/config.php'

是相对路径,不是绝对路径

在 /home/public_html/include/config.php 第 2 行

您为什么要尝试将其包含在配置本身中?你说过你包括来自 grid.php

只需在您真正需要的地方使用绝对路径 - 一切都会奏效。

【讨论】:

【参考方案2】:

您可以通过自动加载更改默认路径,http://php.net/manual/en/language.oop5.autoload.php

【讨论】:

以上是关于致命错误:require_once() 使用绝对路径的主要内容,如果未能解决你的问题,请参考以下文章

调用 require_once() 的警告和致命错误

致命错误:require_once():

require_once 致命错误(再一次)

无法激活插件,因为它触发了致命错误:意外的“require_once”

致命错误:require_once():需要打开失败

致命错误:require_once() [function.require]