首页 > 开发 > PHP > 正文

PHP 第二节 数据类型之数值型

2024-05-04 22:05:07
字体:
来源:转载
供稿:网友

PHP 支持8种基本的数据类型。

四种标量类型:

  • boolean (布尔型)
  • integer (整型)
  • float (浮点型, 也称作 double)
  • string (字符串)

    两种复合类型:

    • array (数组)
    • object (对象)

      最后是两种特殊类型:

      • resource (资源)
      • NULL (NULL)

        boolean数据类型:

        取值只能为True或者False,当其他类型转化为boolean类型时,以下值被认为是 FALSE

        • the 布尔值 FALSE 自身
        • the 整型值 0 (零)
        • the 浮点型值 0.0 (零)
        • 空字符串, 以及字符串 "0"
        • 不包括任何元素的数组
        • 不包括任何成员变量的对象(仅PHP 4.0 适用)
        • 特殊类型 NULL (包括尚未设定的变量)
        • 从没有任何标记(tags)的XML文档生成的SimpleXML 对象

          所有其它值都被认为是 TRUE(包括任何资源)。

          integer数据类型:

          整型值可以使用十进制,十六进制或八进制进行表示,前面可以加上可选的符号(- 或者 +)。

          八进制表示数字前必须加上 0(零),十六进制表示数字前必须加上 0x

          整型数的字长和平台有关,尽管通常最大值是大约二十亿(32 位有符号)。PHP 不支持无符号整数。Integer值的字长可以用常量PHP_INT_SIZE来表示,自 PHP 4.4.0 和 PHP 5.0.5后,最大值可以用常量PHP_INT_MAX来表示。

          如果给定的一个数超出了 integer 的范围,将会被解释为 float。同样如果执行的运算结果超出了 integer 范围,也会返回 float。

          PHP 中没有整除的运算符。1/2 产生出 float 0.5。可以总是舍弃小数部分,或者使用 round() 函数。

          要明确地将一个值转换为 integer,用 (int)(integer) 强制转换。不过大多数情况下都不需要强制转换,因为当运算符,函数或流程控制需要一个 integer 参数时,值会自动转换。还可以通过函数 intval() 来将一个值转换成整型。

          从布尔值转换,FALSE 将产生出 0(零),TRUE 将产生出 1(壹)。

          从浮点数转换,当从浮点数转换成整数时,将向零取整。如果浮点数超出了整数范围(通常为 +/- 2.15e+9 = 2^31),则结果不确定,因为没有足够的精度使浮点数给出一个确切的整数结果。在此情况下没有警告,甚至没有任何通知!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表