我出现了进行php测试,他们被问到一个我无法找到答案的问题.
问题是这样的.
echo "MESSI is injured!!";
header("Location:somepage.php");
Run Code Online (Sandbox Code Playgroud)
采访者希望标题和回声都写在同一页面上.
我想知道它是怎么可能的.它应该给出一些错误
标题已经发送(输出开始于......
是否真的可以将echo和header写入同一页面!
cod*_*ict 35
您可以使用输出缓冲作为
ob_start();
echo "MESSI is injured!!";
header("Location:somepage.php");
ob_end_flush();
Run Code Online (Sandbox Code Playgroud)
问题是我们在开始发送输出后无法发送标头.为了解决这个问题,我们缓冲输出.该功能ob_start打开输出缓冲.当输出缓冲处于活动状态时,不会从脚本(标头除外)发送输出,而是将输出存储在内部缓冲区中.所以echo输出将被缓冲.接下来我们发送标题没有任何问题,因为我们还没有吐出任何输出.最后,我们调用ob_end_flush刷新内部缓冲区内容并停止输出缓冲.
| 归档时间: |
|
| 查看次数: |
10648 次 |
| 最近记录: |