php中ob(Output Buffer出力バッファ)関数の使用方法
1018 ワード
来た:http://bbs.phome.net/ShowThread/?threadid=9247&forumid=2 PHPプログラミングでは、 私たちはしばしばいくつかの直接的な出力の関数に出会います。 passthru()のように、readfile()、 var_dump() など しかし、これらの関数の出力をファイルに導入するか、処理してから出力したい場合があります。 これらの関数の出力を文字列として処理します。 この時に私達は使います。 Output Buffer(出力バッファ) 関数です 出力バッファの処理関数は主にこのようないくつかあります。 OBstart() 出力バッファを開始します この時PHPは出力を停止し、 その後の出力は内部のバッファに転送されます。 OBゲットするcontensts() この関数は内部バッファの内容を返します。 これはこれらの出力を文字列にしたことになります。 OBゲットする length() 内部バッファの長さを返します。 OBend_flash() 出力バッファを終了します バッファの内容を出力します。 その後の出力は正常出力です。 OBend_clean() 出力バッファを終了します バッファの内容を捨てます。 例を挙げて、 var_dump()関数は変数の構造と内容を出力します。 これはデバッグの時に役に立ちます。 変数の内容にある場合 < , > などのHTMLの特殊文字、 ホームページに出力すると見えなくなります。 どうすればいいですか 出力バッファ関数でこの問題を簡単に解決できます。 OBstart(); var_dump($var) $out = OBゲットするcontensts() OBend_clean(); この時var_dump()の出力は既に存在します。 $out はい、行きました 今すぐ出力してもいいです。 echo '
> . httmlspecialchars($out) . '> ; または将来になれば、 またはこの文字列をテンプレート(Template)に送って出力します。