我正在使用PHP + MySQL。我每天通过插入任务将40000个项目插入到一个数据仓库表中。我需要在我的PHP脚本中看到即时sql任务(类似于任务提示器),但是所有的'echos'都是在PHP脚本结束后才写的。
可以不使用AJAX吗?
或者你能给我推荐一个解决方案吗?
我需要展示这样的东西:INSERT INTO table VALUES (1,2,3);
您需要做的是在每次运行$query之前回显它。
但我猜你已经试过了,没有看到它直接工作。
这可能是因为php或您的web服务器正在缓冲输出,直到整个请求完成。
您可以执行以下操作来防止缓存:
- 在需要直接回显的echo后使用
flush()
- 不要使用
ob_start()
并打开隐式刷新,因为即使没有ob_start, php也可能隐式缓存 - 不要使用压缩
你可以试着摆弄这些命令:
apache_setenv('no-gzip', 1);
ini_set('output_buffering', 0);
ini_set('zlib.output_compression', 0);
ini_set('implicit_flush', 1);