ホームページ > バックエンド開発 > PHPチュートリアル > PHP で ob_start() 関数を使用して出力バッファリングを有効にする方法は? (コード例)

PHP で ob_start() 関数を使用して出力バッファリングを有効にする方法は? (コード例)

青灯夜游
リリース: 2023-04-05 14:40:02
オリジナル
3597 人が閲覧しました

PHP では、ob_start() 関数を使用して出力バッファリングを有効にすることができます。次の記事では、ob_start() 関数の使用方法を簡単に説明します。お役に立てば幸いです。 [ビデオチュートリアルの推奨: PHP チュートリアル]

PHP で ob_start() 関数を使用して出力バッファリングを有効にする方法は? (コード例)

PHP はインタープリタ型言語であり、各ステートメントは次々に実行されるため、PHP は HTML を送信する傾向があります。チャンクでブラウザに送信されるため、パフォーマンスが低下します。出力バッファリングを使用すると、すべての出力情報はブラウザに直接送信されなくなり、出力バッファまたは文字列変数に保存され、PHP スクリプトの最後のステートメントが実行されるまでバッファの内容はブラウザに送信されません。 . レンダリングと表示はブラウザが行います。

ただし、出力バッファリングはデフォルトでは有効になっていません。出力バッファリングを有効にするには、スクリプト内の HTML コンテンツを送り返す前に ob_start() 関数を使用する必要があります。

基本構文:

ob_start ()
ログイン後にコピー

パラメーター: ob_start() 関数は、以下に示すように、多数のオプションのパラメーターを受け入れることができます。

●コールバック関数: これは、出力バッファの内容を取得し、レンダリングのためにブラウザに送信される文字列を返す関数を必要とするオプションのパラメータです。コールバック関数は、HTML コンテンツを圧縮するためによく使用されます。

● チャンク サイズ: これは、指定されたサイズの出力バッファ サイズを設定するもう 1 つのオプションのパラメータであり、バッファがいっぱいになるか超えるとすぐに出力されます。

● フラグ: これは、出力バッファ上で実行できる操作を制御するビットマスクを受け入れるもう 1 つのオプションのパラメータです。アクセスを制限するには、このパラメータを渡します。デフォルトの権限では、バッファのクリーン、フラッシュ、削除へのアクセスが許可されます。

戻り値の型: ob_start() 関数は、成功すると TRUE を返し、それ以外の場合は FALSE を返します。

コード例:

<?php 
header("content-type:text/html;charset=utf-8");
function callback($buffer){
//返回缓冲区内的所有东西
    return (strtoupper($buffer.",javascript,html,css!")); 
} 
  
ob_start("callback"); 
echo "Hello php"; 
ob_end_flush(); 
  
?>
ログイン後にコピー
出力:

PHP で ob_start() 関数を使用して出力バッファリングを有効にする方法は? (コード例)

説明:

##●Want Toバッファを使用する場合は、最初にバッファを開始する必要があります。

#出力バッファ フラグには 4 つのタイプがあります。

1. PHP_OUTPUT_HANDLER_CLEANABLE (クリーンのみ)

2. PHP_OUTPUT_HANDLER_FLUSHABLE (フラッシュのみ)

3 .PHP_OUTPUT_HANDLER_REMOVABLE(削除のみ)

4.PHP_OUTPUT_HANDLER_STDFLAGS(すべての操作を許可).

#●出力バッファはスタック可能であるため、ネストされた ob_start は、() メソッドでクローズ/フラッシュされた場合に許可され、必要に応じて動作します。 。

#●ob_end_flush() 関数は、出力バッファの内容を終了 (送信) した後に出力バッファを閉じるために使用されます。

以上がこの記事の全内容です、皆様の学習のお役に立てれば幸いです。さらにエキサイティングなコンテンツについては、PHP 中国語 Web サイトの関連チュートリアルのコラムに注目してください。 ! !

以上がPHP で ob_start() 関数を使用して出力バッファリングを有効にする方法は? (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート