国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 丹阳市| 清水河县| 陇西县| 行唐县| 巴塘县| 平原县| 吴川市| 平陆县| 天台县| 阿克陶县| 余江县| 浪卡子县| 晋城| 肇源县| 定州市| 确山县| 九江县| 宜君县| 侯马市| 长武县| 唐河县| 赞皇县| 扶余县| 宿迁市| 修水县| 济宁市| 福贡县| 专栏| 丘北县| 镇安县| 临洮县| 乌兰察布市| 云梦县| 修文县| 武义县| 安阳县| 丰宁| 长子县| 财经| 绩溪县| 瓮安县|