我的文件结构是这样的:
config.php
script
|--myscript.php
myscript.php
<?php
require '../config.php';
?>
当执行php /path/to/myscript.php
时,我得到Warning: require(../config.php): failed to open stream: No such file or directory.
原因是什么?
发布于 2012-09-12 04:53:09
这是因为您当前的工作目录是您调用命令的目录,而不是脚本所在的目录。
使用
require __DIR__ . '/../config.php';
而不是。__DIR__
是指向当前文件所在目录的常量。
发布于 2014-06-29 15:42:56
我这样做的一种方式是:
php -d include_path=/path/to/config.php script.php
-d用于在运行时设置INI指令,因此您不需要更改代码/configs/目录。
发布于 2013-09-11 02:19:04
如果您不想(或不能)更改代码中的require
行,只需在运行脚本之前cd
到脚本期望在其中执行的目录:
cd /path/to
php /path/to/myscript.php
https://stackoverflow.com/questions/12377719
复制相似问题