函式名稱:ob_start()
函式描述:ob_start() 函式用於開啟輸出緩衝區,並將輸出的內容儲存到緩衝區中,而不會立即傳送到瀏覽器。
適用版本:所有版本的 PHP
語法:bool ob_start ([ callable $output_callback = NULL [, int $chunk_size = 0 [, int $flags = PHP_OUTPUT_HANDLER_STDFLAGS ]]] )
引數:
- output_callback(可選):當輸出被髮送到緩衝區時,可以指定一個回撥函式對輸出進行處理。如果未指定該引數,預設情況下不對輸出進行任何處理。
- chunk_size(可選):指定每次寫入緩衝區的最大位元組數。如果未指定該引數,將使用預設值 0,表示不限制寫入的位元組數。
- flags(可選):用於指定輸出處理的標誌。預設情況下,使用 PHP_OUTPUT_HANDLER_STDFLAGS,表示使用標準輸出處理。
返回值:如果成功開啟了輸出緩衝區,則返回 true,否則返回 false。
示例:
<?php
ob_start();
echo "Hello, World!"; // 該輸出將被儲存到緩衝區
$content = ob_get_contents(); // 獲取緩衝區的內容
ob_end_clean(); // 關閉並清空緩衝區
echo "Content: " . $content; // 輸出緩衝區的內容
?>
輸出結果:
Content: Hello, World!
在上述示例中,ob_start() 函式被呼叫後,所有的輸出將被儲存到緩衝區中,而不會立即傳送到瀏覽器。然後透過呼叫 ob_get_contents() 函式獲取緩衝區的內容,並使用 ob_end_clean() 函式關閉並清空緩衝區。最後,透過 echo 輸出緩衝區的內容。