所以我正在为我自己的个人一次性使用编写一个一次性脚本,我希望能够看到这个过程是如何进行的。基本上我正在处理几千个媒体发布并将它们发送到我们的新 CMS。
所以我不会敲击 CMS,我sleep
会在每 5 个请求后制作几秒钟的脚本。
我希望 - 当脚本正在执行时 - 能够看到我echo
的 s 告诉我脚本将要休眠或与 web 服务的最后一次事务成功。
这在PHP中可能吗?
谢谢你的帮助!
伊恩
所以我正在为我自己的个人一次性使用编写一个一次性脚本,我希望能够看到这个过程是如何进行的。基本上我正在处理几千个媒体发布并将它们发送到我们的新 CMS。
所以我不会敲击 CMS,我sleep
会在每 5 个请求后制作几秒钟的脚本。
我希望 - 当脚本正在执行时 - 能够看到我echo
的 s 告诉我脚本将要休眠或与 web 服务的最后一次事务成功。
这在PHP中可能吗?
谢谢你的帮助!
伊恩
用于ob_flush
发送缓冲区中的任何数据。所以你可以执行一些命令,刷新输出,然后在处理更多命令之前休眠一会儿。
我确实注意到,在特别长的脚本上,PHP 似乎开始发送缓冲区中的内容,即使脚本尚未完成执行
默认情况下,PHP 永远不会回显任何内容,直到整个脚本执行完毕。那只是您的浏览器试图一次输出太多数据,或者您有一些东西导致它在某处刷新。
这是一个包装它的 PHP 包:
https://packagist.org/packages/coderofsalvation/browser-stream
BrowserStream::enable();
BrowserStream::put("loading");
for( $i = 0; $i < 10; $i++ ){
BrowserStream::put(".");
sleep(1);
}