定義和用法
ob_start()
函數創建一個輸出緩衝區。可以傳入一個回調函數來處理緩衝區內容,在內容被刷新前對其進行操作。還可以使用標誌來允許或限制緩衝區能做什麼。
實例
創建輸出緩衝區:
<?php
ob_start ( ) ;
echo "This content will not be sent to the browser." ;
ob_end_clean ( ) ;
echo "This content will be sent to the browser." ;
?>
親自試一試
文法
ob_start ( callback , chunk_size , flags ) ;
參數 |
描述 |
callback |
選修的。用於在緩衝區內容被刷新前處理內容的回調函數。
回調函數應該有以下參數:
參數 |
描述 |
buffer |
輸出緩衝區的內容。 |
phase
|
一個位掩碼,可能包含以下任何標誌:
- PHP_OUTPUT_HANDLER_START - 如果輸出緩衝區剛剛被創建
- PHP_OUTPUT_HANDLER_FLUSH - 如果當前正在刷新輸出緩衝區
- PHP_OUTPUT_HANDLER_FINAL - 如果輸出緩衝區將在此操作後立即被刪除
|
|
chunk_size |
選修的。默認為0。當設置為大於零的值時,一旦內容長度超過此值,緩衝區將自動刷新。 |
flags
|
選修的。默認為PHP_OUTPUT_HANDLER_STDFLAGS。
一個位掩碼,它確定緩衝區被允許執行哪些操作。它可以包含以下標誌:
- PHP_OUTPUT_HANDLER_CLEANABLE - 允許調用ob_clean()、ob_end_clean() 和ob_get_clean()。
- PHP_OUTPUT_HANDLER_FLUSHABLE - 允許調用ob_flush()、ob_end_flush() 和ob_get_flush()。
- PHP_OUTPUT_HANDLER_REMOVABLE - 允許調用ob_end_clean()、ob_end_flush() 和ob_get_flush()。
- PHP_OUTPUT_HANDLER_STDFLAGS - 相當於上述所有標誌的組合。
- PHP_OUTPUT_HANDLER_CLEANABLE|
- PHP_OUTPUT_HANDLER_FLUSHABLE|
- PHP_OUTPUT_HANDLER_REMOVABLE
|