我有一个非常大的 php 脚本,可以使用 $.post 或 ajax 从 jquery 调用它。现在因为这个脚本很长我已经把它分成几个部分,所以我想要的是当脚本的某些部分完成时我想回显一个标志然后在 jquery 上应该读取该标志值并相应地显示评论。所以基本上我想要一个实时响应的加载程序。
例如,假设我在 php 中有三个部分,一个用于验证,一个用于将数据保存到数据库中,最后一个用于创建文件并在其中保存日志。现在请记住,要么所有这些段都应该一个接一个地执行,要么都不应该发生,因此这是一个单一的调用。所以我想要创建的是一个加载程序,它会在每个段完成时通知用户。类似下面的内容
<?php
/* code for segment one
......
*/
echo 1;
/* code for segment two
......
*/
echo 2;
/* code for segment three
......
*/
echo 3;
?>
现在你们中的大多数人一定已经知道这个脚本最终会产生一个像“123”这样的字符串输出,但我希望每个输出一个接一个地发送。这样的事情可能吗?如果是,请分享示例。
最佳答案
理论上 php 脚本可以在执行期间将输出返回给客户端,但根据我的经验,这是不可靠的,因为网络服务器可能会缓存它。
我宁愿将大型 PHP 脚本分解成更小的部分,然后分别调用每个部分。然后每个较小的 php 脚本可以向客户端返回一条消息,表明其进度。使用 session 可以在较小的 php 脚本之间共享上下文。功能。
关于javascript - 从 PHP 获取实时回复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40423790/