ホームページ  >  記事  >  バックエンド開発  >  OutputBuffer(出力バッファ)関数の素晴らしい使い方_PHPチュートリアル

OutputBuffer(出力バッファ)関数の素晴らしい使い方_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-20 10:59:52754ブラウズ

PHP プログラミングでは、passthru()、readfile()、var_dump() などの出力を直接生成する関数がよく出てきます。しかし、場合によっては、これらの関数の出力をファイルにインポートしたり、最初に処理したりしたいことがあります。次に、これらの関数の出力を文字列として出力または処理します。
このとき、出力バッファ機能を使用します。

出力バッファリングを処理する主な関数がいくつかあります:
ob_start() は出力バッファリングを開始し、この時点で PHP は出力を停止し、後続の出力はすべて内部バッファーに転送されます。
ob_get_contents() この関数は、内部バッファーの内容を返します。これは、これらの出力を文字列に変換することと同等です。
ob_get_length() は内部バッファの長さを返します。

ob_end_flush() は出力バッファを終了し、バッファの内容を出力します。これ以降、出力は通常の出力になります。
ob_end_clean() は出力バッファを終了し、バッファの内容を破棄します。

たとえば、var_dump() 関数は変数の構造と内容を出力します。これはデバッグ中に役立ちます。
ただし、変数の内容に <、> などの特殊な HTML 文字が含まれている場合、Web ページに出力するときに表示されません。どうすればよいですか?
この問題は、出力バッファ機能を使用すると簡単に解決できます。

ob_start();
var_dump($var);
$out = ob_get_contents();
ob_end_clean();


この時点で、var_dump() の出力は既に $out に保存されていますので、今すぐ出力できます:

エコー「
」 リーリー ;

または、将来まで待つか、この文字列を出力する前にテンプレート (Template) に送信します。




http://www.bkjia.com/PHPjc/445557.html

www.bkjia.com本当http://www.bkjia.com/PHPjc/445557.html技術記事 PHP プログラミングでは、passthru()、readfile()、var_dump() など、出力を直接生成する関数がよく登場します。しかし、場合によっては、これらの関数の出力をファイルにインポートしたり、...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。