PHP执行耗时脚本实时输出内容
我们有时候会有这样一个需求,当执行耗时脚本时,会执行完这个脚本才会输出数据,如果没有处理完,它会将输出到页面的内容缓存到内存中,等处理完后才执行,这里,我们需要实时输出。
flush — 刷新输出缓冲
刷新PHP程序的缓冲,而不论PHP执行在何种情况下(CGI ,web服务器等等)。该函数将当前为止程序的所有输出发送到用户的浏览器。
flush() 函数不会对服务器或客户端浏览器的缓存模式产生影响。因此,必须同时使用 ob_flush() 和 flush() 函数来刷新输出缓冲。
个别web服务器程序,特别是Win32下的web服务器程序,在发送结果到浏览器之前,仍然会缓存脚本的输出,直到程序结束为止。
有些Apache的模块,比如mod_gzip,可能自己进行输出缓存,这将导致flush()函数产生的结果不会立即被发送到客户端浏览器。
甚至浏览器也会在显示之前,缓存接收到的内容。例如 Netscape 浏览器会在接受到换行或 html 标记的开头之前缓存内容,并且在接受到 </table> 标记之前,不会显示出整个表格。
一些版本的 Microsoft Internet Explorer 只有当接受到的256个字节以后才开始显示该页面,所以必须发送一些额外的空格来让这些浏览器显示页面内容。
如果需要实时输出,则需要两个核心函数ob_flush
, flush
;
<?php// echo phpinfo();if (ob_get_level() == 0) ob_start();for ($i = 0; $i<10; $i++){echo "<br> Line to show.";echo str_pad('',4096)."\n";ob_flush();flush();sleep(2);
}echo "Done.";ob_end_flush();
PHP执行耗时脚本实时输出内容相关推荐
- 服务器脚本执行sql文件命令行,sh命令执行sql脚本
sh命令执行sql脚本 内容精选 换一换 GAUSS-51400 : "Failed to execute the command: %s."SQLSTATE: 无错误原因: 执行 ...
- linux定时任务打印日志,Centos7(linux)使用crond服务定时执行js脚本并将脚本的输出内容记录日志文件的简单应用...
- ## 在Centos7.8上使用crond服务定时执行js脚本并将脚本执行的输出记录日志 1. 安装wget 2. wget https://npm.taobao.org/mirrors/node ...
- android lua sd卡,记Android层执行Lua脚本的一次实践
0. 前言 最近一直在写Lua脚本,有时候出了问题,不知道是Lua层的问题,还是上游的问题,不知道从何下手.于是我学习了一点C/C++和JNI,把整个解析Lua脚本包.执行Lua脚本的流程全部都读了一 ...
- php 即时讯代码,PHP实现即时输出、实时输出内容方法
PHP实现即时输出.实时输出内容方法 发布于 2015-11-24 07:55:46 | 179 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext ...
- php proc open 返回,PHP用proc_open新建子进程使用管道通信非阻塞执行PHP脚本
PHP用proc_open新建子进程使用管道通信非阻塞执行PHP脚本. 脚本结束时register_shutdown_function回调函数访问管道获取子进程输出的数据. 例子1(popen): f ...
- php linux脚本文件,Unix/Linux中如何直接执行PHP脚本文件?
使用Linux系统的服务器都有搭建完整的PHP环境,因此有些用户会用PHP去写一些执行自动化任务的脚本,可是发现每次执行PHP脚本都需要使用php myscript.php的方式,感觉有点麻烦.其实我 ...
- 启动R环境并执行R脚本
启动R环境并执行R脚本 # 打开window系统本身的cmd或者anaconda prompt # 输入R,就会进入R console环境: R可以用'demo()'来看一些示范程序,用'help() ...
- [转帖]C#执行SQL脚本,读取XML文件
[转帖]C#执行SQL脚本,读取XML文件 需要添加如下引用: using System.IO; using System.Data.SqlClient; using System.Collectio ...
- Linux中执行shell脚本的4种方法
这篇文章主要介绍了Linux中执行shell脚本的4种方法总结,即在Linux中运行shell脚本的4种方法,需要的朋友可以参考下. bash shell 脚本的方法有多种,现在作个小结.假设我们编写 ...
最新文章
- 《C语言解惑》—— 第一篇 C语言编程中的对与错
- Message-Digest Algorithm 5
- spring-boot配置readonly
- Unity 利用Coroutine实现跳动数字效果
- scala 方法重载_Scala中的方法重载
- Python3之数据类型
- Unity3D基础21:UI简介
- 24小时从0到1开发阴阳师小程序
- LINUX更改图标后生效
- Day01_FAT12 文件系统
- MongoDB自定义函数部分 定义及引用
- 提醒:本周欢乐时光和美丽杀变种病毒发作(转)
- EDEM软件简单介绍
- R语言数据缺失值处理
- 使用mysql打开什么文件格式_dbf是什么文件怎么打开
- python把txt导入excel_python如何将txt文件导入excel
- 【Linux入门指北】Linux实验综合训练
- 3G门户Android面试题(2013年)
- 怎样关联多个 Excel 档工作表(Sheet)中的数据
- signature=501807407682dd47ffe7345fc7b18d2e,Signature-Free Intrusion Detection
热门文章
- L1-031. 到底是不是太胖了-PAT团体程序设计天梯赛GPLT
- fastunfolding算法_社区发现算法综述—part1
- weblogic启动项目失败查看_weblogic启动报错常见错误解决办法
- 运行tuxedo自带例子simpapp,测试tuxedo安装
- mongodb 添加用户及权限设置详解
- mysql 数据库中根据当前系统时间,取前后几秒 几分钟 几小时 几天
- 推荐一款思维在线思维导图,为什么?
- IOS开发基础知识--碎片14
- 多线程笔记--原子操作Interlocked系列函数
- 指针函数的一个范例,在单片机上运用它能让您的程序结构更明朗清晰,层次感强...