PHP緩衝區ob的介紹

來源:互聯網
上載者:User
這篇文章主要介紹了關於PHP緩衝區ob的介紹,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

介紹:

ob是output buffering的簡稱,輸出緩衝區,緩衝區是通過php.ini中的output_buffering變數控制的。其預設值是off,可以設定為on來開啟buffer。打來buffer後,即便程式中沒有用ob函數,實際上代碼也是使用了緩衝區的。另外,不管php.ini中output_buffering的設定,cli模式下的php始終預設是關閉的。為什麼要是緩衝區呢?簡單來說,高速的cpu早早處理完自己的資料,想通過線路傳遞給使用者,但是線路太窄了,一下輸送不過去。如果引入緩衝區,cpu可以將快速將產生的資料放入緩衝區,然後自己哪兒涼快兒哪兒獃著這歇著去了。緩衝區根據指令適時將資料輸出。這個樣就合理解決了高速cpu與低速I/O裝置的矛盾了。

使用基本原則:

如果ob緩衝開啟,則echo的資料首先放在ob緩衝。如果是header資訊,直接放在程式緩衝。當頁面執行到最後,會把ob緩衝的資料放到程式緩衝,然後依次返回給瀏覽器。

基本使用方法:

    // 開啟OB    ob_start();    //輸出一些內容,此時輸出的內容並不會真正輸出,而是儲存在緩衝區    echo "hello";    echo "word";    //從緩衝區擷取資料    $info = ob_get_contents();    //關閉並清空緩衝區    ob_end_clean();    var_dump($info);    //輸出:string 'helloword' (length=9)

以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.