Heim > Artikel > Backend-Entwicklung > php中的header
最近作东西涉及到header及一些http协议之间的东西,重新看了下php手册(绝对是个好东西),更明白了一些东西,记下先,可能还会补充:
header
发送一个原始 HTTP 标头 (PHP 3, PHP 4, PHP 5)
void header ( string string [, bool replace [, int http_response_code]] )
具体各参数就看php手册了,说得很详细,这次我用到的是header("Location: http://ovliverlin.cnblogs.com");这个功能,这样实现跳转在单独空白页面是没问题的,但是如果不是手册所说得情况“要记住 header() 必须在任何实际输出之前调用,不论是来自普通的 HTML 标记,空行或者 PHP。”就会产生header already sented的错误提示,且不会执行跳转,在web端可以使用<script>location.href = "abc.php"</script>代替,但是如果无法实现js的wap端呢?而或必须使用header的情况呢?这样可以使用缓存来解决。手册中引用“可以在代码中使用 ob_start() 及 ob_end_flush() 来实现这样的功能,或者通过修改 php.ini 中的 output_buffering 配置选项来实现,也可以通过修改服务器配置文件来实现。”
如下:
ob_start();
Microsoft Internet Explorer 4.01 中的一个漏洞使得该机制无法正常工作,无解决方案。在 Microsoft Internet Explorer 5.5 中也有个漏洞影响到这一点,升级到 Service Pack 2 或更高版本可以解决。