ホームページ >バックエンド開発 >PHPチュートリアル >バイトを人間が読める単位に正確にフォーマットするにはどうすればよいですか?
バイトを正確にフォーマットする
さまざまなシナリオで、バイト値をキロバイト、メガバイト、そしてギガバイト。たとえば、Web ページ上のファイル サイズを表示するには、バイトを適切な単位にフォーマットする必要があります。
解決策: フォーマット関数の使用
効果的な解決策の 1 つは、フォーマット関数を使用することです。これはバイトを入力として受け取り、フォーマットされた文字列を返します。これを実現する PHP 関数の例を次に示します。
function formatBytes($bytes, $precision = 2) { $units = array('B', 'KB', 'MB', 'GB', 'TB'); $bytes = max($bytes, 0); $pow = floor(($bytes ? log($bytes) : 0) / log(1024)); $pow = min($pow, count($units) - 1); // Uncomment one of the following alternatives // $bytes /= pow(1024, $pow); // $bytes /= (1 << (10 * $pow)); return round($bytes, $precision) . $units[$pow]; }
説明
この関数は 2 つのパラメータを取ります:
関数は配列 $units を使用して単位 (バイト、キロバイト、メガバイト、ギガバイト) を表します、テラバイト)。 $bytes の対数を 1024 の対数で割ることにより、適切な単位を表す電力 $pow を計算します。最大電力は、配列内の最も高い単位で制限されます。
次に、関数はバイト値を次の値で除算します。必要な単位に変換するための適切な電力。最後に、値を指定された精度に丸め、$units 配列から対応する単位を追加します。
たとえば、$bytes が 5,222,937 の場合、関数はそれを「5.01 MB」としてフォーマットします。
以上がバイトを人間が読める単位に正確にフォーマットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。