Returns the integer value of var
, using the specified base
for the conversion (the default is base 10). intval() should not be used on objects, as doing so will emit an E_NOTICE
level error and return 1.
The scalar value being converted to an integer
The base for the conversion
Note:
If
base
is 0, the base used is determined by the format ofvar
:
- if string includes a "0x" (or "0X") prefix, the base is taken as 16 (hex); otherwise,
- if string starts with "0", the base is taken as 8 (octal); otherwise,
- the base is taken as 10 (decimal).
The integer value of var
on success, or 0 on failure. Empty arrays return 0, non-empty arrays return 1.
The maximum value depends on the system. 32 bit systems have a maximum signed integer range of -2147483648 to 2147483647. So for example on such a system, intval('1000000000000') will return 2147483647. The maximum signed integer value for 64 bit systems is 9223372036854775807.
Strings will most likely return 0 although this depends on the leftmost characters of the string. The common rules of integer casting apply.
Throws E_NOTICE
and returns 1, when an object is passed to var
.
The base
parameter has no effect unless the var
parameter is a string.
The following examples are based on a 32 bit system.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <?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 ?> |
strval() -
Please login to continue.