Scroll
PHP レッスン — レッスン 4 — PHP の数値変数
前のレッスンでは、文字列型の変数を学びました。今は数値型の変数についても見てみましょう。最も単純な数値型は整数型です。
PHP での整数型
整数型とは、[-2 147 483 648,...,-4,-3,-2,-1,0,1,2,3,4,...,2 147 483 647] という数列のすべての数です。つまり、-2147483648 から 2147483647 までです。この制限は、整数を符号化するのに 32 ビットが必要だからです。
PHP のすべての変数と同様に、整数型も単純な代入で定義されます。
<?php
$x = 5;
$y = -8;
?>
おなじみの 10 進法の数値に加えて、他の数値体系(8 進法、16 進法など)も使用できます。
<?php
$i = 456; // 10 進数
$i = -895; // 負の数
$i = 0121; // 8 進数(10 進数では 81 に相当)
$i = 0x1B; // 16 進数(10 進数では 27 に相当)
?>
整数型に加えて、PHP には小数型もあります。
PHP での小数型(float)
PHP での小数型は、10 進小数として記述されます。
$pi = 3.14;
小数部は基数から小数点で区切られますが、この小数点を文字列連結演算子と混同しないでください。また、小数型を標準形式で記述することもできます。
$b = 3.2e5;
$c = 9E-11;
小数型、または 浮動小数点数(floating point)は、64 ビットのメモリを占めます(整数型の 2 倍であることに注意してください)。
通常、小数型は除算の結果として生じます:
$a = 1/3;
print $a;
結果は以下のようになります:
0.333333333333
また、結果が完全に明白ではないことがあります:
$a = 1/3;
$a = $a*3;
print $a;
結果は 0.999999999 ではなく、正確に 1 になります。
電卓で同じことをしたら(1 を 3 で割り、3 を掛ける)、電卓の精度に応じて 100 万分の 1 か 10 億分の 1 が失われます。しかし PHP は「だまされにくく」、変数の操作を記憶し、結果のどの小数も失いません。