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

作成日: 更新日:

ini_parse_quantity関数は、PHP 8.2以降の環境で利用可能な、PHPの設定ファイル(php.iniなど)で用いられる、人間が読みやすい形式のサイズ表記(例: "128M", "1G")を、コンピュータが直接扱えるバイト単位の整数値に変換する関数です。この関数は、主にPHPの内部設定値をプログラム内で動的に取得し、その値を正確なバイト数として利用したい場合に役立ちます。

具体的には、"K"(キロバイト)、"M"(メガバイト)、"G"(ギガバイト)といった単位が付加された文字列を受け取ると、対応するバイト数に変換して返します。単位の文字は大文字でも小文字でも認識されます。例えば、"256M"という文字列を渡すと、256メガバイトに相当するバイト数が計算され、整数として返されます。もし数値のみで単位が指定されていない場合は、その数値がそのままバイト数として扱われます。

この関数を使うことで、開発者はPHPの設定値に含まれるサイズ情報(例: memory_limitupload_max_filesize)を、文字列として取得した後、手動でパースする手間を省き、エラーの少ない形で正確な数値として利用できます。これにより、設定値に基づいたメモリ管理やファイルサイズの検証などの処理を、より安全かつ簡潔に実装することが可能になります。

基本的な使い方

構文(syntax)

<?php

$quantityString = "128M";
$bytes = ini_parse_quantity($quantityString);
echo $bytes;

?>

引数(parameters)

string $shorthand

  • string $shorthand: 設定項目を表す数値を表す文字列。K、M、Gなどの接尾辞に対応します。

戻り値(return)

int

ini_parse_quantity関数は、設定ファイル(iniファイル)で定義された数量を表す文字列(例: "10M", "2G")を、バイト数を示す整数型(int)に変換して返します。

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