время
|
|
Глава 11. Типы Содержание Введение Булев Целые Числа 5
такова:
десятичные : [1-9][0-9]*
| 0
шестнадцатеричные : 0[xX][0-9a-fA-F]+
восьмеричные : 0[0-7]+
целые : [+-]?десятичные
| [+-]?шестнадцатеричные
| [+-]?восьмеричные
Размер целого зависит от платформы, хотя, как правило, максимальное значение около двух миллиардов (это 32-битное знаковое). PHP не поддерживает беззнаковые целые.
Превышение размера целого
Если вы определите число, превышающее пределы целого типа, оно будет интерпретировано как число с плавающей точкой. Также, если вы используете оператор, результатом работы которого будет число, превышающее пределы целого, вместо него будет возвращено число с плавающей точкой.
<?php
$large_number = 2147483647;
var_dump($large_number);
// вывод: int(2147483647)
$large_number = 2147483648;
var_dump($large_number);
// вывод: float(2147483648)
// это справедливо и для шестнадцатеричных целых:
var_dump( 0x80000000 );
// вывод: float(2147483648)
$million = 1000000;
$large_number = 50000 * $million;
var_dump($large_number);
//