基本的PHP程序抛出错误。 session_start()无法发送会话cookie

时间:2015-05-04 02:54:21

标签: php session caching cookies

这是我简单的PHP程序:

<HTML>
<HEAD>
<TITLE>Lookout World!</TITLE>
</HEAD>
<BODY>
<?php
   session_start();
   echo "Hello, world!";
?>
</BODY>
</HTML>

当我通过Apache 2.4 Web服务器运行这个PHP程序时,会抛出这些错误:

  

警告:session_start():无法发送会话cookie - 已在第8行的C:\ Apache24 \ htdocs \ Hello.php中发送的输出(输出从C:\ Apache24 \ htdocs \ Hello.php:6开始)< / p>      

警告:session_start():无法发送会话缓存限制器 - 已在第8行的C:\ Apache24 \ htdocs \ Hello.php中发送的标头(输出从C:\ Apache24 \ htdocs \ Hello.php:6开始)    你好,世界!

奇怪的是,如果你有这个:

<?php
   session_start();
   echo "Hello, world!";
?>

...程序运行得很好,没有错误。 但是,对于我正在处理的软件,我们需要将PHP嵌入到HTML文件中。 (对于学校项目而言)。那么,我该如何修复这些并摆脱这些错误。因为在我们的学校项目中,它也会出现这些错误,我们无法登录我们学校项目的PHP程序。

1 个答案:

答案 0 :(得分:0)

只需将您的session_start()调用移至顶部即可。

<?php
   session_start();
?>
<HTML>
<HEAD>
<TITLE>Lookout World!</TITLE>
</HEAD>
<BODY>
<?php
   echo "Hello, world!";
?>
</BODY>
</HTML>
  

注意:要使用基于cookie的会话,必须调用session_start()   在向浏览器输出任何内容之前。

http://php.net/manual/en/function.session-start.php