Уроки 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; ?>
Помимо привычных нам чисел в десятеричной системы, можно использовать и другие системы счисления (восьмеричную, шестнадцатеричную и др.)
<?php $i = 456; // десятичное число $i = -895; // отрицательное число $i = 0121; // восьмеричное число (эквивалентно 81 в десятичной системе) $i = 0x1B; // шестнадцатеричное число (эквивалентно 27 в десятичной системе) ?>
Помимо целый чисел в PHP есть еще и дробные числа.
Дробные числа (float) в PHP
Дробные числа в PHP записываются в виде десятичных дробей:
$pi = 3.14;
Разделяются дробная часть от основного числа точкой, но не путайте эту точку с операцией сложения строк. Также можно записать дробные числа в стандартном виде:
$b = 3.2e5; $c = 9E-11;
Дробные числа или как их еще называют числа с плавающей точкой (float point) занимают 64 бита памяти (заметьте, что это в два раза больше, чем целые числа).
Обычно дробные числа получаются в результате деления:
$a = 1/3; print $a;
Результат будет:
0.333333333333
Также стоит заметь, что результат может быть не совсем очевиден:
$a = 1/3; $a = $a*3; print $a;
Результат будет не 0.999999999, а ровно 1.
Если бы вы сделаете тоже самое на калькуляторе (разделите 1 на 3 и умножите на 3), то у вас потеряется 1 миллионная или 1 миллиардная в зависимости точности калькулятора. PHP же сложно "обмануть", он запоминает действие над переменной и не потеряет ни доли результата.