PHP 輸出緩衝是一個確認 PHP 引擎保存資料的過程,同時在輸入進行處理時提供輸出。一旦 PHP 引擎獲得處理後的資料並執行以提供輸出,那麼同時該資料就會一點一點地發送到引擎並發送到瀏覽器。如果使用上述的輸出緩衝機制來執行,那麼這將在資料處理方面提供更高的效率和可行性,因為資料首先儲存在變數中,然後作為腳本的一部分發送到瀏覽器。
廣告 該類別中的熱門課程 PHP 開發人員 - 專業化 | 8 門課程系列 | 3次模擬測驗開始您的免費軟體開發課程
網頁開發、程式語言、軟體測試及其他
文法:
輸出緩衝沒有固定的格式,但可以透過以下方式表示和使用:
<?php function to start php_info( ); // processing before giving the output. use variable to assign the final value as an output ?>
PHP 中的輸出緩衝在其工作方面具有重要意義,如下所示:
讓我們討論 PHP 輸出緩衝的範例。
此程式示範了由使用者定義的回呼() 函數,該函數將取代變數中定義的值,如輸出所示。
代碼:
<!DOCTYPE html> <html> <body> <?php function cll_bck($buff) { return (str_replace("Mobile", "Tabs", $buff)); } ob_start("cll_bck"); ?> <html> <body> <p>Everyone_prefers_Mobile_over_Tabs.</p> </body> </html> <?php ob_end_flush(); ?> </body> </html>
輸出:
此程式示範了 ob_get_contents() 函數,用於取得定義到最終引擎的內容,同時傳遞輸出中所示的變數。
代碼:
<!DOCTYPE html> <html> <body> <?php ob_start(); echo "Today_day_is_good. "; $o_t_1 = ob_get_contents(); echo "and_pleasant"; $o_t_2 = ob_get_contents(); ob_end_clean(); var_dump($o_t_1, $o_t_2); ?> </body> </html>
輸出:
This program demonstrates the ob_start function where the output buffering gets initiated and then it gets displayed as shown in the output.
Code:
<!DOCTYPE html> <html> <body> <?php ob_start(); echo 'Text written will_get displayed easily.'; ?> </body> </html>
Output:
This program demonstrates the use of text that will get removed once the ob_end_clean function is called as shown in the output.
Code:
<!DOCTYPE html> <html> <body> <?php ob_start(); echo 'Text_written_will_get_removed_easily_using ob_end_clean.'; ob_end_clean(); ?> </body> </html>
Output:
This program demonstrates the ob_list_handlers() function which is used to return an array with the output buffer handler with the list of handlers as shown in the output.
Code:
<!DOCTYPE html> <html> <body> <?php print_r(ob_list_handlers()); ob_end_flush(); ob_start("ob_gz_handler"); print_r(ob_list_handlers()); ob_end_flush(); ob_start(function($str_2) { return $str_2; }); print_r(ob_list_handlers()); ob_end_flush(); ?> </body> </html>
Output:
This program demonstrates the encoding and decoding of all types of possible codes being defined but if in case something is missing, or the browser is getting some value as wrong then it will return the output as shown.
Code:
<!DOCTYPE html> <html> <body> <pre class="brush:php;toolbar:false"> <?php iconv_set_encoding("int_encd", "internal_UTF_8"); iconv_set_encoding("o/p_encd", "ISO-8859-1"); var_dump(iconv_get_encoding('all_encd_types')); ?>