(PHP 8 >= 8.2.0)
ini_parse_quantity — ini ディレクティブの省略形を解釈し、サイズを取得する
shorthand
パースする ini ディレクティブの省略形。 数値を指定しなければなりません。そのあとに、オプションの倍率を続けます。 サポートされている倍率は以下のとおりです: k
/K
(1024
), m
/M
(1048576
), g
/G
(1073741824
)。 数値は10進数、16進数(数値の前に 0x
,0X
を付けた場合)、 8進数(数値の前に 0o
, 0O
, 0
を付けた場合)、 2進数(数値の前に 0b
, 0B
を付けた場合) を指定できます。
解釈済みのサイズをバイト単位で、整数として返します。
値をパースできなかった場合や、 不正な倍率を使った場合には、E_WARNING
が発生します。
例1 ini_parse_quantity() の例
<?php
var_dump(ini_parse_quantity('1024'));
var_dump(ini_parse_quantity('1024M'));
var_dump(ini_parse_quantity('512K'));
var_dump(ini_parse_quantity('0xFFk'));
var_dump(ini_parse_quantity('0b1010k'));
var_dump(ini_parse_quantity('0o1024'));
var_dump(ini_parse_quantity('01024'));
var_dump(ini_parse_quantity('Foobar'));
var_dump(ini_parse_quantity('10F'));
?>
上の例の出力は、 たとえば以下のようになります。
int(1024) int(1073741824) int(524288) int(261120) int(10240) int(532) int(532) Warning: Invalid quantity "Foobar": no valid leading digits, interpreting as "0" for backwards compatibility int(0) Warning: Invalid quantity "10F": unknown multiplier "F", interpreting as "10" for backwards compatibility int(10)