PHP标记之前的空格

时间:2010-12-03 13:07:41

标签: php

我用PHP编写了一个应用程序。它包括
1:登录表单
2:欢迎页面
3:注销表单,重定向到登录表单。

我的register_global =在php.ini中打开。

我的应用程序在LAMP和WAMP上正常运行。但它没有在实时服务器上设置会话。

但是,在逐行检查后,在会话设置文件中,在启动'<?PHP ...... ?>'之前有一个空格。删除该空间后,我的应用程序在实时服务器上正常工作。

‘<?PHP ...... ?>'会话未设置之前,该空格背后的原因是什么?

2 个答案:

答案 0 :(得分:5)

输出空间,即发送到浏览器。要打开会话,您需要发送一个所谓的HTTP标头,您需要在输出任何内容之前执行此操作。这就是为什么它不起作用。您的错误消息可能是“已发送标头”。

答案 1 :(得分:1)

发送响应标头之前,您无法发送任何内容;会话在响应头中发送。由于您事先发送了空格,因此无法启动会话。

session_start上的文档,“要使用基于cookie的会话,必须在向浏览器输出任何内容之前调用session_start()。”这包括一开始的单一空间。

基本上,任何脚本中的第一件事应该始终是<?php