PHP intval 变量处理函数



  • 定义和用法

    intval - 获取变量的整数值
  • 版本支持

    PHP4 PHP5 PHP7
    支持 支持 支持
    5.1.0 当传入的 var 是 object,将会抛出 E_NOTICE 并返回 1。
  • 语法

    intval ( mixed $var [, int $base = 10 ] )
    
    
    通过使用指定的进制 base 转换(默认是十进制),返回变量 var 的 integer 数值。 intval() 不能用于 object,否则会产生 E_NOTICE 错误并返回 1。
  • 参数

    参数 必需的 描述
    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)."<br/>";                      
    echo intval(4.2)."<br/>";                     
    echo intval('42')."<br/>";                    
    echo intval('+42')."<br/>";                   
    echo intval('-42')."<br/>";                   
    echo intval(042)."<br/>";                     
    echo intval('042')."<br/>";                   
    echo intval(1e10)."<br/>";                    
    echo intval('1e10')."<br/>";                  
    echo intval(0x1A)."<br/>";                    
    echo intval(42000000)."<br/>";                
    echo intval(420000000000000000000)."<br/>";   
    echo intval('420000000000000000000')."<br/>"; 
    echo intval(42, 8)."<br/>";                   
    echo intval('42', 8)."<br/>";                 
    echo intval(array())."<br/>";                 
    echo intval(array('foo', 'bar'))."<br/>";     
    
    
    尝试一下
  • 相关函数

    boolval() - 获取变量的布尔值
    floatval() - 获取变量的浮点值
    strval() - 获取变量的字符串值
    settype() - 设置变量类型。
    is_numeric() - 是否是数字。