日期:2014-01-04  浏览次数:20479 次

这是因为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()是没办法使用的。
明白了吗?