基于flush()不能按顺序输出时的解决办法

如果是在linux下, 首先确认是否添加 ob_start() 和 ob_flush().


代码如下:

ob_start();
for ($i=1; $i<=10; $i++) {
        echo $i."<br />\n";
        ob_flush();
        flush();
        usleep(500000);
}

如果还是不能输出的话, 就在代码前面加上头信息


代码如下:

header("Content-Type:text/html;charset=utf8;");
ob_start();
for ($i=1; $i<=10; $i++) {
        echo $i."<br />\n";
       ob_flush();
    flush();
        usleep(500000);
}

(0)

相关推荐

  • php flush类输出缓冲剖析

    <?php for ($i=10; $i>0; $i--) { echo $i; flush(); sleep(1); } ?> 按照php手册里的说法 该函数将当前为止程序的所有输出发送到用户的浏览器. 上面的这段代码,应该隔一秒钟输出一次$i.但是实际中却不一定是这样.有可能是等了10秒钟后,所有的输出同时呈现出来. 好,我们来改一下这段代码,改成 <?php ob_end_clean();//修改部分 for ($i=10; $i>0; $i--) { echo $i;

  • PHP逐行输出(ob_flush与flush的组合)

    ob_flush/flush在手册中的描述, 都是刷新输出缓冲区, 并且还需要配套使用, 所以会导致很多人迷惑- 其实, 他们俩的操作对象不同, 有些情况下, flush根本不做什么事情.. ob_*系列函数, 是操作PHP本身的输出缓冲区. 所以, ob_flush是刷新PHP自身的缓冲区. 而flush, 严格来讲, 这个只有在PHP做为apache的Module(handler或者filter)安装的时候, 才有实际作用. 它是刷新WebServer(可以认为特指apache)的缓冲区.

  • 基于flush()不能按顺序输出时的解决办法

    如果是在linux下, 首先确认是否添加 ob_start() 和 ob_flush(). 复制代码 代码如下: ob_start();for ($i=1; $i<=10; $i++) {        echo $i."<br />\n";        ob_flush();        flush();        usleep(500000);} 如果还是不能输出的话, 就在代码前面加上头信息 复制代码 代码如下: header("Content

  • JDBC连接mysql处理中文时乱码解决办法详解

    JDBC连接mysql处理中文时乱码解决办法详解 近日,整合的项目需要跟一个比较老版本的mysql服务器连接,使用navicat查看,发现此mysql服务器貌似没有设置默认编码,而且从操作此mysql的部分php文件看,应该是使用的gb2312的编码,但是,直接使用jdbc操作,从库中读取出来的中文全都是乱码. 一开始,使用类似entity.setDepartName(new String(rs.getString("hg").getBytes("gbk"), &q

  • 详解ubuntu双系统启动时卡死解决办法

    ubuntu双系统启动时卡死解决办法(在ubuntu16.04和18.04测试无误) 问题描述: 在安装完ubuntu双系统后,第一次启动ubuntu系统时,卡死在启动界面(或者黑屏),这大概都是由于显卡驱动的原因,具体不在这里阐述,通过以下方法能成功解决,据我个人经验,这可能是诸多方法中最简单最容易理解的方法. 解决办法: 1.(如果已经卡死了,则强制关机)开机: 2.(在选择系统的界面)选择ubuntu高级选项,回车: 3.(在出现的两个模式中)选择恢复(recovery)模式,回车: 4.

  • 基于js disabled="false"不起作用的解决办法

    js使某表单元素不能访问:document.getElementById("text_id").disabled="true"; 如果想取消时用:document.getElementById("text_id").disabled="false";不会起作用. 正确写法为:document.getElementById("text_id").disabled=false;去掉引号 或者:document.

  • php生成excel列名超过26列大于Z时的解决方法

    本文实例讲述了php生成excel列名超过26列大于Z时的解决方法.分享给大家供大家参考.具体分析如下: 我们生成excel都会使用phpExcel类,这里就来给大家介绍在生成excel列名超过26列大于Z时的解决办法,这是phpExcel类中的方法,今天查到了,记录一下备忘,代码如下: 复制代码 代码如下: public static function stringFromColumnIndex($pColumnIndex = 0)  {          //  Using a lookup

  • Oracle数据库中ORDER BY排序和查询按IN条件的顺序输出

    ORDER BY非稳定的排序 提一个问题: oracle在order by 排序时,是稳定排序算法吗? 发现用一个type进行排序后,做分页查询,第一页的数据和第二页的数据有重复 怀疑是order by 时,两次排列的顺序不一致 看到业务描述的问题可以得到的结论order by排序不稳定,还有第一个印象就是,type肯定是不唯一的,并且没有索引吧. 这里先科普下排序的稳定性,举个最简单的例子,1,2,3,1,4,5 排序 排序的结果是1,1,2,3,4,5,这时候观察这个1,如果第一个1还是排序

  • 基于JavaScript实现的顺序查找算法示例

    本文实例讲述了基于JavaScript实现的顺序查找算法.分享给大家供大家参考,具体如下: 对于查找数据来说,最简单的方法就是从列表的第一个元素开始对列表元素逐个进行判断,直到找到了想要的结果.这个方法叫做顺序查找,有时候也被叫做线性查找.它属于暴力查找技巧的一种. 顺序查找实现起来非常简单,代码如下: function generalSearch(arr,data){//普通的顺序查找,就是遍历一遍看是否找到 for(var i=0;i<arr.length;i++){ if(arr[i]==

  • pandas中的DataFrame按指定顺序输出所有列的方法

    问题: 输出新建的DataFrame对象时,DataFrame中各列的显示顺序和DataFrame定义中的顺序不一致. 例如: import pandas as pd grades = [48,99,75,80,42,80,72,68,36,78] df = pd.DataFrame( {'ID': ["x%d" % r for r in range(10)], 'Gender' : ['F', 'M', 'F', 'M', 'F', 'M', 'F', 'M', 'M', 'M'],

  • Python控制台输出时刷新当前行内容而不是输出新行的实现

    需求目标 执行Python程序的时候在控制台输出内容的时候只显示一行,然后自动刷新内容,像这样: Downloading File FooFile.txt [47%] 而不是这样: Downloading File FooFile.txt [47%] Downloading File FooFile.txt [48%] Downloading File FooFile.txt [49%] 实现环境 Python 3.x 实现代码 import time for i in range(10): t

  • 在python中利用dict转json按输入顺序输出内容方式

    一般常规的我们保存数据为dict类型时,系统会自动帮我们排序:但有时我们想按照输入顺序的key:value保存到dict中,而不想要改变顺序,则我们可以通过使用collecions,进行排序. collections是一个python的内建模块. 示例如下: # -*- coding:utf-8 -*- #dic = {} dic = dict() dic['b'] = 1 dic['a'] = 2 dic['b0'] = 3 dic['a1'] = 4 print("dic is:"

随机推荐