intval - Возвращает целое значение переменной
Вернуться к: Функции для работы с переменными
intval
(PHP 4, PHP 5, PHP 7)
intval — Возвращает целое значение переменной
Описание
Возвращает целое значение переменной var
,
используя указанное основание системы исчисления base
для преобразования
(по умолчанию основание равно 10). intval()
нельзя использовать с объектами, попытка это сделать
вызовет ошибку уровня E_NOTICE
и вернет значение 1.
Список параметров
-
var
-
Скалярное значение для конвертации в целое
-
base
-
Основание системы исчисления для преобразования
Замечание:
Если
base
равно 0, основание системы исчисления определяется форматом параметраvar
:- если строка включает префикс "0x" (или "0X"), основание выбирается равным 16 (шестнадцатеричным);
- иначе, если строка начинается с "0", основание равно 8 (восьмеричное);
- иначе, основание выбирается равным 10 (десятеричным).
Возвращаемые значения
Целое значение переменной var
в случае успеха, или 0 в случае
неудачи. Для пустых массивов возвращается 0, для непустых возвращается 1.
Максимальное значение зависит от операционной системы. В 32-х битных системах максимальное знаковое целое лежит в диапазоне от -2147483648 до 2147483647. Так, например, в такой системе, intval('1000000000000') вернет 2147483647. Максимальное знаковое целое значение для 64-х битных систем - 9223372036854775807.
Для строк функция скорее всего вернет 0, хотя это зависит от первого символа в строке. Применяются общие правила преобразований в целые.
Примеры
Пример #1 Примеры использования intval()
Следующие примеры приведены для 32-х битной системы.
<?php
echo intval(42); // 42
echo intval(4.2); // 4
echo intval('42'); // 42
echo intval('+42'); // 42
echo intval('-42'); // -42
echo intval(042); // 34
echo intval('042'); // 42
echo intval(1e10); // 1410065408
echo intval('1e10'); // 1
echo intval(0x1A); // 26
echo intval(42000000); // 42000000
echo intval(420000000000000000000); // 0
echo intval('420000000000000000000'); // 2147483647
echo intval(42, 8); // 42
echo intval('42', 8); // 34
echo intval(array()); // 0
echo intval(array('foo', 'bar')); // 1
?>
Примечания
Замечание:
Параметр
base
применяется только в том случае, если параметрvar
является строкой.
Список изменений
Версия | Описание |
---|---|
5.1.0 |
Генерирует ошибку уровня E_NOTICE и
возвращает 1, если в качестве var
передан объект.
|
Смотрите также
- boolval() - Get the boolean value of a variable
- floatval() - Возвращает значение переменной в виде числа с плавающей точкой
- strval() - Возвращает строковое значение переменной
- settype() - Присваивает переменной новый тип
- is_numeric() - Проверяет, является ли переменная числом или строкой, содержащей число
- Манипуляции с типами
- Математические Функции Произвольной Точности BCMath
Вернуться к: Функции для работы с переменными