PHP 中的 get_file_contents 和作用域问题

发布于 2024-12-15 01:01:15 字数 656 浏览 1 评论 0原文

当我开发网站时,我使用一个非常(非常)简单的创建页面的系统:

//$_page is, of course, declared above the loop, just as $needed_modules is.

foreach ($needed_modules as $part) 
{
    global $_page;

    if (file_exists($part)) {

        $_page . file_get_contents($part);
    } else {
        //404
    }
}

echo $_page;

现在,问题是 file_get_contents 不返回任何内容:不是 false,不是字符串,nada(文件是 <强>不为空)。

执行确实进入if内部,并且$part(对应于具有相对路径的文件名)不只是被设置,而且它实际上指向文件< /em>。

为什么 $_page 为空(与设置相反,isset($_page) 实际上计算结果为TRUE)?

编辑:我的服务器上的错误报告处于全力状态,并且日志没有显示任何异常情况。

When I'm developing websites, I use a very (very) simple system of creating pages:

//$_page is, of course, declared above the loop, just as $needed_modules is.

foreach ($needed_modules as $part) 
{
    global $_page;

    if (file_exists($part)) {

        $_page . file_get_contents($part);
    } else {
        //404
    }
}

echo $_page;

Now, the problem is that file_get_contents doesn't return anything: not false, not a string, nada (and the file is not empty).

Execution does go inside the if and $part (which corresponds to a filename with relative path) isn't just set, but it actually points to the file.

Why is it that $_page is empty (as opposed to being set, isset($_page) actually evaluates to TRUE)?

Edit: Error-reporting is on full throttle on my server, and the logs show nothing out of the ordinary.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

酒绊 2024-12-22 01:01:15

您没有保存 file_get_contents 的返回值:

$_page . file_get_contents($part);

我认为您的意思是:

$_page .= file_get_contents($part);

You are not saving the return value of file_get_contents:

$_page . file_get_contents($part);

I think you meant to say:

$_page .= file_get_contents($part);
与之呼应 2024-12-22 01:01:15

您没有对返回值执行任何操作。试试这个:

$_page .= file_get_contents($part);

You're not doing anything with the returned value. Try this:

$_page .= file_get_contents($part);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文