PHP intval() 函數

PHP 可用的函數PHP 可用的函數

intval() 函數用於獲取變數的整數值。

intval() 函數通過使用指定的進制 base 轉換(默認是十進位),返回變數 var 的 integer 數值。 intval() 不能用於 object,否則會產生 E_NOTICE 錯誤並返回 1。

PHP 4, PHP 5, PHP 7

語法

int intval ( mixed $var [, int $base = 10 ] )

參數說明:

  • $var:要轉換成 integer 的數量值。
  • $base:轉化所使用的進制。

如果 base 是 0,通過檢測 var 的格式來決定使用的進制:

  • 如果字串包括了 "0x" (或 "0X") 的首碼,使用 16 進制 (hex);否則,
  • 如果字串以 "0" 開始,使用 8 進制(octal);否則,
  • 將使用 10 進制 (decimal)。

返回值

成功時返回 var 的 integer 值,失敗時返回 0。 空的 array 返回 0,非空的 array 返回 1。

最大的值取決於操作系統。 32 位系統最大帶符號的 integer 範圍是 -2147483648 到 2147483647。舉例,在這樣的系統上, intval('1000000000000') 會返回 2147483647。64 位系統上,最大帶符號的 integer 值是 9223372036854775807。

字串有可能返回 0,雖然取決於字串最左側的字元。

實例

實例

<?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 ?>

PHP 可用的函數PHP 可用的函數