file_get_contents未找到存在的文件

Rob*_*Rob 9 php file-get-contents

我有一个文件,我想要另一个脚本来访问使用 file_get_contents

我希望它访问的文件位于它上面的目录中,所以我正在使用 file_get_contents('../file.php?this=that')

然而,它正在回归No such file or directory,我无法理解为什么.文件在那里.

我假设它与本地文件而不是遥控器有关.任何想法或解决方法?

Mar*_*c B 24

file_get_contents('../file.php?this=that')
Run Code Online (Sandbox Code Playgroud)

除非您使用整个http://....语法构建完整的URL,否则这将无法工作.PHP会将此视为请求获取名为file.php?this=that当前目录上一级的文件.它不会将其视为相对URL并执行HTTP请求,而是使用本地文件系统处理程序.你可能很好file.php,但由于本地文件系统没有URL或查询参数的概念,因此它不会知道剥离?this=that并只是加载file.php.因此,你的'没有这样的文件错误'.

  • 当然,只需使用绝对网址.`file_get_contents('http://example.com/some/dirs/file.php?this=that');`将通过HTTP处理程序,并且很可能按您的意愿工作.但是通过HTTPland进行完整的往返只是为了从另一个PHP文件中获取内容似乎很愚蠢.而是像一次煮意大利面一面,并为每个面条加热淡水. (2认同)

Sch*_*rgh 14

根据PHP.net,使用来自本地服务器的file_get_contents函数读取文件的正确解决方案正在使用

// <= PHP 5
$file = file_get_contents('./people.txt', true);

// > PHP 5
$file = file_get_contents('./people.txt', FILE_USE_INCLUDE_PATH);
Run Code Online (Sandbox Code Playgroud)

认为它可能有助于而不是使用变通办法!