PHP - file_get_contents遵循标题刷新

时间:2015-07-16 08:06:52

标签: php header refresh file-get-contents

我有一个使用

的脚本
header('Refresh: 5; url=http..');
die();

我用另一个使用函数" file_get_contents"的php文件调用此脚本。不幸的是它不起作用。 标题位置没有问题。

有什么建议吗?

- 更新 -

我遵循了Oscargeek的建议。 我已经使用包含元刷新的HTML打印更新了代码。 调用此URL的脚本是一个"系统" cron,并在foreach中进行此调用。所以我认为它无法奏效。 我用cron和wget改变了这个调用,但结果是一样的。

其他建议?

2 个答案:

答案 0 :(得分:1)

当您执行file_get_contents时,您将获得HTML而不是第一页的标题。

file_get_contents只返回没有标题的字符串,标题位置正常,因为在返回此字符串之前正在进行重定向。

尝试从HTML进行重定向,在第一页中写下此内容:

<html>
    <head>
        <meta http-equiv="refresh" content="5; url=http://google.com" />
    </head>
</html>

在您正在调用的PHP中,您应该只打印此内容而不使用其他数据,并且刷新即可。

答案 1 :(得分:0)

好的,首先,我想知道为什么使用file_get_contents来包含PHP文件。我使用include或require。

为您的问题提供一些其他信息:

问题是:这些标题中没有一个在您的其他脚本中运行。所以这意味着如果它们被发送,它们会被你试图读取的文件发送 - 但是:由于脚本没有通过HTTP协议发送,所以它不会发送。

如果您想像这样使用它,我建议您像Oscargeek一样使用HTML-Refresh,或者如果您想保留PHP代码,请使用Include / Require。