【问题标题】:PHP require_once '...........';PHP require_once '............';
【发布时间】:2017-11-04 08:54:11
【问题描述】:

我正在调用函数require_once '../autoload.php';,但我得到了错误

Warning: require_once(../autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\Api\Autotask\vendor\test.php on line 2
Fatal error: require_once(): Failed opening required '../autoload.php' (include_path='C:\xampp\php\PEAR') in C:\xampp\htdocs\Api\Autotask\vendor\test.php on line 2

我做错了什么?

【问题讨论】:

  • autoload 文件的路径错误。
  • 同级所以require_once 'autoload.php'
  • 尝试给出绝对路径而不是相对路径,例如 require_once ABSPATH 。 'autoload.php';
  • 哦,把autoload.php前面的“../”去掉
  • 能否请您发布您的代码副本,而不是屏幕截图。它使人们更容易回答您的问题。

标签: php


【解决方案1】:

为避免此类问题以及最佳实践,我建议使用根路径:

$root = realpath($_SERVER["DOCUMENT_ROOT"]);

上面的代码会将你在服务器上的真实路径分配给 $root。

之后,根据您的 localhost/webserver 根目录使用 require/include 等:

require_once($root/Api/Autotask/vendor/autoload.php)

例如,如果您的文件位于 websiterootfolder/php/nice_folder 您的代码将是:

require_once($root/php/nice_folder/autoload.php)

通过使用这种做法,您可以从任何位置以任何您想要的方式包含任何文件,无论是否动态

【讨论】:

    猜你喜欢
    • 2013-03-27
    • 2011-02-08
    • 2016-08-31
    • 2013-12-03
    • 2011-10-02
    • 1970-01-01
    • 1970-01-01
    • 2014-08-14
    • 2014-10-21
    相关资源
    最近更新 更多