本文實(shí)例講述了php中的buffer緩沖區(qū)用法。分享給大家供大家參考,具體如下:
buffer其實(shí)就是緩沖區(qū),一個(gè)內(nèi)存地址空間,主要用于存儲(chǔ)數(shù)據(jù)
我們都運(yùn)行程序?yàn)g覽器訪(fǎng)問(wèn),會(huì)顯示1。
但是其實(shí)這中間會(huì)經(jīng)歷一個(gè)buffer,我們可以這樣理解:這個(gè)1數(shù)據(jù)會(huì)先到php緩存區(qū),當(dāng)這個(gè)緩沖區(qū)滿(mǎn)了之后,再傳給客戶(hù)端(瀏覽器)。
這個(gè)過(guò)程大致流程如下:
內(nèi)容 -> php buffer -> tcp -> 終端(瀏覽器)
php.ini
output_buffering = on
#打開(kāi)output緩沖,默認(rèn)打開(kāi)的。
output_buffering打開(kāi)與關(guān)閉的區(qū)別:
1.打開(kāi)了php輸出緩存: echo,print -> php output_buffring -> server buffering -> browser buffering -> browser display
2.未打開(kāi)php輸出緩存: echo,print -> server buffering -> browser buffering -> browser display
我們?cè)诖a里獲取緩存區(qū)內(nèi)容:
?php
echo 1;
echo "hr/>";
// 獲取php緩存區(qū)的內(nèi)容
$buffer = ob_get_contents();
echo $buffer;
如果在php配置文件php.ini中output_buffering = on
是開(kāi)啟的,那么上面代碼在瀏覽器上會(huì)顯示2個(gè)1和2條橫線(xiàn),查看網(wǎng)頁(yè)源代碼如下:
如果php.ini中是關(guān)閉的,那么只會(huì)顯示一次。
當(dāng)然我們也可以在代碼中,臨時(shí)開(kāi)啟php緩沖區(qū)
?php
ob_start(); // 開(kāi)始php緩存,寫(xiě)在最前面
echo 1;
echo "hr/>";
// 獲取php緩存區(qū)的內(nèi)容
$buffer = ob_get_contents();
echo $buffer;
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《php緩存技術(shù)總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《PHP基本語(yǔ)法入門(mén)教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- PHP緩沖區(qū)用法總結(jié)
- PHP中對(duì)緩沖區(qū)的控制實(shí)現(xiàn)代碼
- 刷新PHP緩沖區(qū)為你的站點(diǎn)加速
- PHP5.0 TIDY_PARSE_FILE緩沖區(qū)溢出漏洞的解決方案
- php flush類(lèi)輸出緩沖剖析
- php中ob(Output Buffer 輸出緩沖)函數(shù)使用方法
- PHP 輸出緩沖控制(Output Control)詳解
- php緩沖輸出實(shí)例分析
- 剖析 PHP 中的輸出緩沖
- PHP輸出緩沖控制Output Control系列函數(shù)詳解
- PHP嵌套輸出緩沖代碼實(shí)例
- PHP基礎(chǔ)之輸出緩沖區(qū)基本概念、原理分析