在Header PHP函数之前可以接受什么?

时间:2013-10-07 08:12:24

标签: php

我理解在生成任何输出之前应该使用header函数,这意味着echo,print,vardump之类的东西。我想知道的是在执行函数后头文件是否正常工作。假设我想将数据插入到sql表中或比较两个变量。

非常感谢。

1 个答案:

答案 0 :(得分:2)

实际上在manuel中写得很清楚:header

  

header()用于发送原始HTTP标头。有关HTTP标头的详细信息,请参阅»HTTP / 1.1规范。

     

请记住,在发送任何实际的输出之前,必须先调用 header(),无论是普通HTML标记,文件中的空行还是PHP。使用include或require,函数或其他文件访问函数读取代码是一个非常常见的错误,并且在调用header()之前输出空格或空行。使用单个PHP / HTML文件时存在同样的问题。

<html>
<?php
/* This will give an error. Note the output
 * above, which is before the header() call */
header('Location: http://www.example.com/');
exit;
?>

这意味着,在使用header()之前,您可以运行任何不产生任何输出的PHP代码。