intval
(PHP 4, PHP 5, PHP 7)
intval — Obtiene el valor entero de una variable
Descripción
Devuelve el valor integer de una var,
con la especificada base para la conversión
(por defecto es base 10). No debería ser usado en objetos, si es usado
emitirá un error de nivel E_NOTICE
y devolverá 1.
Parámetros
-
var -
El valor escalar a convertir a un entero
-
base -
La base para la conversión
Nota:
Si
basees 0, la base usada estará determinada por el formato devar:- si el string incuye el prefijo "0x" (o "0X"), la base se tomará como 16 (hex); si no,
- si el string comienza con "0", la base se tomará como 8 (octal); si no,
- la base se toma como 10 (decimal).
Valores devueltos
El valor entero de var en caso de éxito, o 0 en
caso de error. Arrays vacíos devuelven 0, arrays no vacíos devuelven 1.
El valor máximo depende del sistema. Los sistemas de 32 bits tienen un rango máximo para un entero con signo que va desde -2147483648 a 2147483647. Así, por ejemplo, en tal sistema, intval('1000000000000') devolverá 2147483647. El valor máximo para un entero con signo en sistemas de 64 bits es 9223372036854775807.
Las cadenas muy probablemente devolverán 0, aunque esto depende de los carácteres del extremo izquierdo de la cadena. Aplican las reglas comunes para moldeado de enteros.
Ejemplos
Ejemplo #1 Ejemplos de intval()
Los siguientes ejemplos se basan en un sistema de 32 bits.
<?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
?>
Notas
Nota:
El parámetro
baseno tiene ningún efecto a menos que el parámetrovarsea una cadena.
Historial de cambios
| Versión | Descripción |
|---|---|
| 5.1.0 |
Lanza E_NOTICE y
devuelve 1, cuando se pasa un objecto a
var.
|
Ver también
- boolval() - Obtener el valor booleano de una variable
- floatval() - Obtener el valor flotante de una variable
- strval() - Obtiene el valor de cadena de una variable
- settype() - Establece el tipo de una variable
- is_numeric() - Comprueba si una variable es un número o un string numérico
- Manipulación de tipos
- Funciones matemáticas de precisión arbitraria de BCMath