国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php中flush()和ob_flush(),ob_end_flush()用法與區(qū)別

2024-09-04 11:48:10
字體:
供稿:網(wǎng)友

本文章來給大家總結(jié)介紹關(guān)于php中flush()和ob_flush(),ob_end_flush()用法與區(qū)別,有需要了解的朋友可進(jìn)入?yún)⒖紖⒖肌?/p>

首先來說說buffer,它是一個(gè)內(nèi)存地址空間,為4096(1kb)【在php.ini配置文件中找到output_buffering配 置】,php有php output_buffering機(jī)制,php代碼在執(zhí)行的時(shí)候,并不是立即將內(nèi)容輸出,而是想將echo/print內(nèi)容輸出到buffer,buffer滿的時(shí)候才會(huì)將數(shù)據(jù)交給系統(tǒng)內(nèi)核交由tcp傳給瀏覽器顯示,當(dāng)開啟php php output_buffering機(jī)制(默認(rèn)是開啟的,可以通過ob_start()函數(shù)開啟)后,只有當(dāng)php buffer中的數(shù)據(jù)達(dá)到了設(shè)置值,才會(huì)將buffer中 的數(shù)據(jù)發(fā)送給瀏覽器,但是瀏覽器也是有緩存的,一些版本的瀏覽當(dāng)數(shù)據(jù)達(dá)到256字節(jié)的時(shí)候才輸出內(nèi)容,

ob_start()函數(shù):打開輸出緩沖區(qū).

函數(shù)格式 void ob_start(void) 

說明:當(dāng)緩沖區(qū)激活時(shí),所有來自PHP程序的非文件頭信息均不會(huì)發(fā)送,而是保存在內(nèi)部緩沖區(qū),為了輸出緩沖區(qū)的內(nèi)容,可以使用ob_end_flush()或flush()輸出緩沖區(qū)的內(nèi)容。

Flush:刷新緩沖區(qū)的內(nèi)容,輸出。

函數(shù)格式:flush() 

說明:這個(gè)函數(shù)經(jīng)常使用,效率很高。

ob_get_contents:返回內(nèi)部緩沖區(qū)的內(nèi)容。

函數(shù)格式:string ob_get_contents(void) 

說明:這個(gè)函數(shù)會(huì)返回當(dāng)前緩沖區(qū)中的內(nèi)容,如果輸出緩沖區(qū)沒有激活,則返回 FALSE.

ob_get_length:返回內(nèi)部緩沖區(qū)的長度。

函數(shù)格式:int ob_get_length(void) 

說明:這個(gè)函數(shù)會(huì)返回當(dāng)前緩沖區(qū)中的長度;和ob_get_contents一樣,如果輸出緩沖區(qū)沒有激活,則返回 FALSE.

ob_end_clean:刪除內(nèi)部緩沖區(qū)的內(nèi)容,并且關(guān)閉內(nèi)部緩沖區(qū)

函數(shù)格式:void ob_end_clean(void) 

說明:這個(gè)函數(shù)不會(huì)輸出內(nèi)部緩沖區(qū)的內(nèi)容而是把它刪除

ob_end_flush:發(fā)送內(nèi)部緩沖區(qū)的內(nèi)容到瀏覽器,并且關(guān)閉輸出緩沖區(qū)

函數(shù)格式:void ob_end_flush(void) 

說明:這個(gè)函數(shù)發(fā)送輸出緩沖區(qū)的內(nèi)容(如果有的話)

ob_implicit_flush:打開或關(guān)閉絕對刷新

函數(shù)格式:void ob_implicit_flush ([int flag]) 

說明:默認(rèn)為關(guān)閉緩沖區(qū),打開絕對輸出后,每個(gè)腳本輸出都直接發(fā)送到瀏覽器,不再需要調(diào)用 flush()

flush()可以將等待輸出的內(nèi)容立即發(fā)送到客戶端,而ob_flush()只有等待到buffer滿的時(shí)候才輸出,可以通過下面一個(gè)簡單的php實(shí)例來驗(yàn)證下,實(shí)例代碼如下:

  1. <?php 
  2.  //這是防止瀏覽器的緩存 
  3.  echo str_repeat(" ",1024); 
  4.  for($i=0;$i<5;$i++){ 
  5.   echo $i;  
  6.   sleep(1); 
  7.   flush();//會(huì)每隔1s輸出一個(gè)數(shù)字,但是使用ob_flush()會(huì)等待5s一起輸出 
  8.  } 
  9. ?> 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 泸州市| 若羌县| 子长县| 慈溪市| 涿州市| 西乡县| 和平县| 睢宁县| 会泽县| 永吉县| 南澳县| 合川市| 萨迦县| 乡宁县| 朝阳区| 盐源县| 湘潭县| 道孚县| 泗洪县| 改则县| 太湖县| 西林县| 突泉县| 文昌市| 札达县| 玉龙| 黑山县| 武汉市| 乐业县| 伊川县| 罗山县| 广东省| 清丰县| 启东市| 阿荣旗| 南江县| 屏南县| 库车县| 大邑县| 封开县| 广元市|