php ob flush 不管用,php ob_flush 不能每隔一秒输出
实现功能:
浏览器每隔一秒输出一个数字。
php.ini配置为
版本5.3
implicit_flush = off
output_buffering = off
另:查看output_buffering是否打开,可以:var_dump(ini_get('output_buffering'));
好我们再来看看这段代码:<?php
$i = 3;
ob_start();
while ($i--) {
echo $i, "
";
ob_flush();
flush();
sleep(1);
}
ob_end_clean();
?>
可为什么:这段代码不能每隔一秒输出呢??
原因分析:
apache运行原理:当你访问一个地址(发送请求)后,apache启动PHP,那么php执行是页面级的,即如果有可执行的代码:它全部执行完后再丢给apache,apache再丢给browser显示结果
如何实现?
如果是cli(命令行界面) 显示结果方式又不一样,那里不一样呢?
linux cmd:
php5 test.php
由php直接执行,不经过apache,web service,就可以实现<?php
$i = 3;
while ($i--) {
echo $i, "\n";
sleep(1);
}
ob_end_clean();
?>
php ob flush 不管用,php ob_flush 不能每隔一秒输出相关推荐
- PHP的ob_flush()与flush()区别
说明:纯属个人实践中的理解以及一些总结,理解有误或有疑问之处,请告知,共同进步. 一.首先说一下buffer. buffer是指内存地址空间. 1.Linux系统默认大小一般为4096(4kb). 其 ...
- sys.stdout.flush()
python的stdout是有缓冲区的,给你个例子你就知道了 import time import sysfor i in range(5):print i,#sys.stdout.flush()ti ...
- 【PHP CMS系统】-- 新闻管理系统 1
实现全站真静态化. 一般CMS系统都分为前台和后台, 前台系统是给用户看的,而后台则是管理员添加,修改,删除页面的地方. 在CMS系统中,前台一般都是html静态页面. 后台的责任是完成CRUD操作后 ...
- 剖析PHP中的输出缓冲
剖析PHP中的输出缓冲 本文按署名·非商业用途·保持一致授权 作者: ,发表于2005年12月24日01时54分 我们先来看一段代码. <?php for ($i=10; $i>0; $ ...
- php bigpipe实现,如何通过php 实现BigPipe分块输出
原理:利用 ob_flush() 与 flush()将缓冲区的内容提前输出,浏览器可提早加载这部分的内容,无需等待所有输出完成再加载. 将页面内容划分为一个个小块,输出一个后再输出下一个,使用户可尽早 ...
- PHP 循环时间控制缓冲方法
2019独角兽企业重金招聘Python工程师标准>>> PHP 循环时间控制方法 for ($i=10; $i>0; $i--) { echo $i; flush(); sle ...
- 工作中有可能用到的运维小知识《现查现用》
第一部分:基础部分 1.1window到linux互传文件 1.1.1使用rz/sz命令 安装:yum install lrzsz –y 最好安装下面的内容: yum install telnet n ...
- php bigpipe实现,如何通过php实现BigPipe分块输出
原理:利用 ob_flush() 与 flush()将缓冲区的内容提前输出,浏览器可提早加载这部分的内容,无需等待所有输出完成再加载. 将页面内容划分为一个个小块,输出一个后再输出下一个,使用户可尽早 ...
- python 命令-python常见命令
练习题答案 python常用标准库 python challenge 0. 搭建虚拟环境 sudo apt-get install python-pip sudo apt-get install py ...
最新文章
- C/C++字符串输入方法比较(带回车不带回车输入)
- oracle list 分区详解,oracle的List分区及分区索引
- dbv mysql_MariaDB与MySQL对比 --- 对分布式事务的支持
- c语言while队列不为空,C语言实现循环队列的初始化进队出队读取队头元素判空-2...
- MYSQL统计行数时到底应该怎么COUNT
- 因为项目管理知识体系指南(PMBOK)初识宝地
- R12.2.6 installation failed with - Unable to rename database
- 多线程之银行排队叫号系统的实现
- 【ATSC】 为什么选择ATSC 3.0
- 嵌入式开发——基于小熊派的智慧农业案例(一)
- Mobaxterm终端工具和Neokylin7基础
- 阿里OSS图片持久化,裁切,缩放,格式转换等
- 5款实用又有趣的微信小程序,每一款都是大家公认的好用!
- 织梦建站:织梦CMS整站源码通用安装教程(图文教程)
- 怎么卸载虚幻4_用虚幻引擎重现新海诚风格“秒速五厘米”场景(附流程和思路)...
- gunicorn flask的请求流程
- 计算机存储—大话存储II读书
- Spire.PDF for Java 4.8.7 Crack
- 2021高考杭二中成绩查询,浙江高中高考成绩排名,2021年浙江各高中高考成绩排行榜...
- macOS 13.0 Cocoapods安装 (you don‘t have write permissions for the /Library/Ruby/Gems/2.6.0 directory)