php每秒输出一次

首先说到php.ini中的两个配置

output_buffering配置
•Off: 表示关闭PHP输出缓存
•On: 打开无限大的输出缓存
•4096: 打开大小为4096Byte的输出缓存(默认)

implicit_flush配置
•On: 表示每次输出(如echo,print)后自动调用flush()函数后,直接输出
•Off: 与On相反,每次输出后不会调用flush(),需要等到server buffering满了才会输出,但是我们可以用flush()函数代替它,不开启也没关系,反而更加灵活

在默认的output_buffering=4096和implicit_flush=off的情况下

已知chrome与firefox浏览器的输出缓存为1000Bytes 即只有超过1000Bytes的内容才会被输出

来看这一段程序

<?php
for ($i = 9; $i > 0; $i--) {
    print str_repeat(' ', 122);
    echo $i . '<br />';
    ob_flush();
    flush();
    sleep(1);
}
ob_end_flush();
str_repeat(' ', 122)即将空格重复122次
为什么是122呢?
我们知道一个字节占8位 1000Bytes需要125个字符 想输出出来就要126个字符
一个32位数字占4个字符
126-4=122

转载于:https://www.cnblogs.com/Bin-x/p/4565566.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值