gpt4 book ai didi

javascript - 为什么 php 在打印数据时会在客户端断开连接时中止,但在其他情况下不会中止?

转载 作者:行者123 更新时间:2023-11-28 06:27:58 25 4
gpt4 key购买 nike

我正在使用 PHP 和 JavaScript 来使用 SSE。

我有一个循环(出于开发目的,生命周期为 15 秒),该循环运行并向数据库添加“开始连接”、“仍然在这里”(休眠 1 秒后)和“结束连接”用于调试目的。

我发现,当 php 脚本在没有“print”ing/“echo”ing/“var_dump()”ing 任何信息的情况下运行时,脚本(读取“循环”)会运行到完成,无论客户端是否有是否终止连接。

但是,当我 print/echo/var_dump 任何内容时 - 用户终止后脚本就会终止。

为什么会存在这种差异?

最佳答案

通常,当客户端断开连接时,脚本应中止。有几种方法可以覆盖它:

  • php.ini 中设置 ignore_user_abort 选项。
  • httpd.conf 中设置 php_valueignore_user_abort 选项。
  • 在 PHP 脚本中调用 ignore_user_abort()
  • 在 PHP 脚本中使用 register_shutdown_function() 注册关闭函数。

关于javascript - 为什么 php 在打印数据时会在客户端断开连接时中止,但在其他情况下不会中止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34951656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com