閱讀706 返回首頁    go 阿裏雲 go 技術社區[雲棲]


關於PHP輸出緩衝函數的一些使用技巧

本文轉自IT擺渡網歡迎轉載,請標明出處
擺渡網

更多php文章請閱讀

php問題解決

  在PHP中, Output Buffer輸出緩衝函數可以將一些直接產生輸出的函數, 如passthru(),var_dump() 等的結果導入到文件中,或者經過處理再輸出, 或者作為字符串來處理,在PHP中,處理輸出緩衝的函數主要有以下幾個:

  ob_start() 函數:開始輸出緩衝, 此時PHP將停止輸出, 在這之後的輸出都被暫存在內部的緩衝裏供以後使用。

  ob_get_contents() 函數:返回內部緩衝裏的內容,相當於把輸出變成了字符串.

  ob_get_ length() 函數:返回內部緩衝的長度

  ob_end_flush() 函數:結束緩衝, 並輸出緩衝裏的內容,一般會配合ob_end_clean() 函數:結束緩衝並清空緩衝內容。

  下麵是一個例子幫助理解。以var_dump()函數輸出一個變量的結構和內容為例,如果變量裏的內容有 < , > 等特殊字符, 輸出到網頁裏就看不見了,這是因為被HTML標記語言解釋執行了,我們不想這樣,那怎麼辦呢? 這就要用到輸出緩衝函數了:

ob_start();
var_dump($var);
$out = ob_get_contents();
ob_end_clean();

  執行上邊代碼之後,var_dump()的輸出已經存在 $out 裏了. 你可以現在輸出:

echo '<pre>'.htmlspecialchars($out) .'</pre>';

  你也可把這個字符串送到模板(Template)裏輸出。

閱讀了這篇文章的人還閱讀了

PHP時間格式轉換加減
關於服務器上PHP跟mysq還有JSl時間的問題
php+mysql分頁原理案例分析
php把HTML代碼轉換成文本輸出的方法

最後更新:2017-08-28 15:32:27

  上一篇:go  如何加強企業研發管理?阿裏雲效硬盤式管理實踐揭秘
  下一篇:go  2017中國容器技術使用情況有獎調查