这是因为php。ini中有一些设置不对,最有可能是就是有无效的dll文件在内。但为什么会出现这些呢?
我在win32下,建了一个空的test.php文件。
然后执行c:\php4\php.exe test.php,此时我的php.ini的配置是正确的。屏幕输出为:
x-powered-by: php/4.0.0
content-type: text/html
咦,这不是显示在屏幕上的东西吗?是的。但这时这两行是作http信息头的。是不会显示在浏览器中的。
现在我在php.ini中加载了php_mysql.dll。而这个文件是不存在的。
再次执行c:\php4\php.exe test.php,屏幕输出为:
content-type: text/html
php fatal error: unable to load dynamic library php_mysql.dll<br>
此处还有些乱字符
x-powered-by: php/4.0.0
content-type: text/html
就是在content-type: text/html之后,又出现了一些错误信息,所以才导致x-powered-by: php/4.0.0 content-type: text/html出现在屏幕上。而这其实本来是http的信息头的。
那么我想在出这些错时,如果output_buffering=off的话,那么setcookie()是没办法使用的。
明白了吗?