我觉得自己像个白痴,但我无法弄清楚出了什么问题,而且我尝试的每个解决方案(如下所列)都失败了。
问题:
这不起作用:
$settings = file_get_contents('settings'); \\ should search current directory
此文件位于何处?
/apps/foxyman/model/settings
我尝试过:
将php.ini
中的include_path指令更改为:
:/应用/ foxyman
然后重新启动Apache 。是的,我确实运行phpinfo();
并验证它已设置。
将doc_root指令更改为php.ini
中的相同内容并重新启动Apache。
将右侧httpd.conf文件中的文档根设置更改为:DocumentRoot "/apps/foxyman"
$settings = file_get_contents('model/settings'); // should search include_path
这一切都无效。
是的,我知道可能有其他解决方案涉及我在每个文件中设置包含路径,但我不想这样做 - 我想解决它一次而不再考虑它。
对我而言,也许我只是一个白痴(你应该随意通过告诉我在评论中杀死自己来告诉我),但是看起来很奇怪php无法在当前目录AND似乎没有搜索我设置的包含路径。在您提出之前,是的,该文件确实存在。
还有一件事,这是以下方法的输出:
echo getcwd();
echo get_include_path();
echo $_SERVER['DOCUMENT_ROOT'];
/apps/foxyman/model
.:/apps/foxyman
/apps/foxyman
答案 0 :(得分:2)
默认file_get_contents() 不使用包含路径!如果您希望它在第二个参数中使用包含路径传递true
。
$settings = file_get_contents('settings', true);