在 PHP 中使用 ob_start 方法緩衝輸出資料

Kevin Amayi 2023年1月30日 2022年5月13日
  1. 使用 ob_start 方法緩衝簡單字串,然後使用 PHP 中的 ob_get_contents 方法獲取資料
  2. 在 PHP 中使用 ob_start 方法緩衝 HTML 資料並使用 ob_get_contents 方法獲取資料
  3. 使用帶有回撥函式的 ob_start 方法緩衝字串資料並替換字串中的字元
在 PHP 中使用 ob_start 方法緩衝輸出資料

我們將使用 ob_start 方法初始化一個緩衝區,然後輸出一個簡單的字串,該字串將被自動緩衝;然後,我們將使用 ob_get_contents 方法從緩衝區中獲取資料,然後將其列印出來。

我們還將初始化一個緩衝區 ob_start 方法,然後輸出一個 HTML 塊,該塊將自動緩衝;然後,我們將使用 ob_get_contents 方法從緩衝區中獲取資料,然後將其列印出來。

最後,我們將初始化一個緩衝區 ob_start 方法,宣告一個將自動緩衝的簡單字串,然後使用傳遞給 ob_start 方法的回撥替換字串中的資料。

使用 ob_start 方法緩衝簡單字串,然後使用 PHP 中的 ob_get_contents 方法獲取資料

我們將設定 ob_start,然後輸出一個自動緩衝的簡單字串;然後我們將使用 ob_get_contents 從緩衝區中獲取資料並列印它。

<?php
ob_start();
echo("Hello there!"); //would normally get printed to the screen/output to browser
$output = ob_get_contents();
echo $output;
?>

輸出:

Hello there! Hello there! 

在 PHP 中使用 ob_start 方法緩衝 HTML 資料並使用 ob_get_contents 方法獲取資料

我們將設定 ob_start,然後自動緩衝輸出 HTML 資料;然後我們將列印緩衝的資料。

<?php
ob_start();
?>
<div>
    <span>text</span>
    <a href="#">link</a>
</div>
<?php
$content = ob_get_contents();
?>

輸出:

<div>
 <span>text</span>
 <a href="#">link</a>
</div>

使用帶有回撥函式的 ob_start 方法緩衝字串資料並替換字串中的字元

我們將設定 ob_start,然後自動緩衝輸出 HTML 資料;然後我們將列印緩衝的資料。

<?php
    //Declare a string variable
    $str = "I like PHP programming. ";
    echo "The original string: $str";

    //Define the callback function
    function callback($buffer)
    {
    //Replace the word 'PHP' with 'Python'
    return (str_replace("PHP", "Python", $buffer));
    }

    echo "The replaced string: ";
    //call the ob_start() function with callback function
    ob_start("callback");

    echo $str;
?>

輸出:

The original string: I like PHP programming. The replaced string: I like Python programming. 

相關文章 - PHP Array