我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

日期:2000 年 9 月 2 日星期六 21:43:02 GMT

:/1.3.11 (Unix)/1.1.1PHP/4.0.2-dev

X——由:PHP/4.0.2-dev

设置-:foo=bar

: 关闭

-类型:text/html

放 。

浏览器从服务器读取 HTTP 响应,并知道已发送一个名为 foo (在本例中为 )的变量,其值是 bar。

为什么要使用技术

早在 PHP/FI 2.0 中,技术需求就已显现。如果您使用过此版本的 PHP,您可能还记得经常遇到发送后出现“Oops, after has been sent”错误消息,让您摸不着头脑,不知道原因。

如果您使用过较新版本的 PHP(PHP 3.0 甚至 PHP 4.0),那么您就会知道此错误消息:哎呀,已发送后。或者,您在尝试调用 PHP 的 add() 函数时遇到了 add-sent 消息。通常,技术用户会避免使用这些烦人的错误消息,而开发人员会将其用于高级目的。

这些错误何时发生?如果您在 HTTP 发送后尝试添加或修改标头信息,并且文档主体和标头之间缺少空白行,则会产生这些错误消息。要了解这种情况是如何发生的,让我们看看 PHP 如何处理 HTTP 输出和主体输出。

脚本开始执行时,它可以发送(标题)信息和正文信息。

信息(来自()或()函数)不会立即发送,而是保存到列表中。

这允许您修改标头信息,包括默认标头(例如 -Type 标头)。但是,一旦脚本发送任何非标头输出(例如,使用块或 print() 调用),PHP 必须先发送所有标头,然后发送一个空白行,终止 HTTP,然后继续处理正文数据。从此时起,不允许添加或修改标头信息的任何尝试,并将发送上述错误消息之一。

虽然这不会造成太大的问题,但有时它会在发送任何输入之前终止 HTTP,这会使脚本逻辑变得复杂。技术可以解决这些问题。

怎么运行的

启用后,当脚本发送输出时,PHP 不会发送 HTTP。相反,它会将此输出通过管道传输到动态增长的缓冲区(仅在具有集中输出机制的 PHP 4.0 中可用)。您仍然可以修改、添加标题行或设置它们,因为标题实际上并未发送。在最简单的情况下,当脚本终止时,PHP 会自动将 HTTP 发送到浏览器,然后发送输出缓冲区的内容。这很简单。

基本用法

有四个功能可以帮助您控制:

复制代码如下:

()

启用该机制。

支持多级别——例如,一个函数可以被调用多次。

()

发送(输出缓冲)并禁用该机制。

()

清除但不发送,并禁用。

()

将当前内容作为字符串返回。允许您处理脚本发出的任何输出。

另外,你可以在php.ini中启用该指令,如果启用了该指令,那么每个PHP脚本就相当于调用了开头的()函数。

1

复制代码如下:

1

二维码
扫一扫在手机端查看

本文链接:https://by928.com/3296.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线