【PHP8.x】ob_get_length関数の使い方

作成日: 更新日:

ob_get_length関数は、現在の出力バッファの内容の長さをバイト単位で取得する関数です。この関数は、PHPの出力バッファリング機能が有効になっている場合にのみ機能します。

出力バッファリングとは、PHPスクリプトが出力するHTMLやテキストなどのコンテンツを、直接ウェブブラウザに送信せず、一時的にサーバーのメモリ上に蓄積しておく仕組みのことです。ob_get_length関数は、現在アクティブな(最も外側の)出力バッファに蓄えられているデータのバイト数を整数値で返します。

出力バッファがまだ何も内容を含んでいない、つまり空である場合は、0を返します。ただし、PHPの出力バッファリングが全く有効になっていない状態でこの関数が呼び出された場合、falseが返されることに注意が必要です。この関数は引数を取りません。

Webアプリケーション開発において、生成されるコンテンツのサイズを事前に確認したり、特定のデータ量に基づいて出力の処理を最適化したりする際に活用されます。例えば、出力されるHTMLの合計バイト数を把握し、そのサイズに応じて特定のヘッダを付与するといった用途が考えられます。コンテンツのサイズ管理や、出力のパフォーマンスチューニングに役立つ機能です。

基本的な使い方

構文(syntax)

<?php
$length = ob_get_length();
?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

int|false

この関数は、現在アクティブな出力バッファのサイズをバイト単位で返します。バッファが存在しない場合は false を返します。

【PHP8.x】ob_get_length関数の使い方 | いっしー@Webエンジニア