PHP入门学习笔记之—— PHP支持的数据类型

来源:互联网 发布:淘宝点收藏没反应 编辑:程序博客网 时间:2024/06/05 20:00

PHP 支持的数据类型。

四种标量类型:

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

两种复合类型:

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

最后是两种特殊类型:

  • resource (资源)
  • NULL (NULL)
查看某个表达式的值和类型,用 var_dump()。
如果只是想得到一个易读懂的类型的表达方式用于调试,用 gettype()。
要查看某个类型,不要用 gettype(),而用 is_type 函数。
要将一个变量强制转换为某类型,可以对其使用强制转换或者 settype() 函数。
==============================================================================================================
A、boolean :true或false,不区分大小写。false 返回 0,true 返回 1。
B、integer:一个 integer 是集合 Z = {..., -2, -1, 0, 1, 2, ...} 中的一个数。
整型值可以使用十进制,十六进制或八进制表示,前面可以加上可选的符号(- 或者 +)。
八进制表示数字前必须加上 0(零),十六进制表示数字前必须加上 0x。
PHP 不支持无符号整数。
当从浮点数转换成整数时,将向零取整。
如果浮点数超出了整数范围(通常为 +/- 2.15e+9 = 2^31),则结果不确定,
因为没有足够的精度使浮点数给出一个确切的整数结果。
在此情况下没有警告,甚至没有任何通知!
决不要将未知的分数强制转换为 integer,这样有时会导致不可预料的结果。
C、float:   浮点数(也叫浮点数,双精度数或实数)
永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。
如果确实需要更高的精度,应该使用任意精度数学函数或者 gmp 函数。
D、string:  一个字符串 就是由一系列的字符组成,因此,一个字符就是一个字节。
                    这就是说,一个字节只能有256种不同的变化,这也暗示了PHP无 法原生支持Unicode 。              
                    Note: 一个很长的字符串是没有问题的,PHP对于字符串; 而对字符串长度的限制只和运行PHP程序的该台计 算机的内存大小有关。
一个字符串 通过下面的4种方法来定义:
1、单引号
2、双引号
3、heredoc 语法结构
4、nowdoc 语法结构 (自PHP 5.3.0以后)
定义一个字符串 的最简单的方法是用单引号把它包围起来 (标点符号 ')。
如果想要输出一个单引号,需在它的前面加个反斜线 ()。在单引号前或在字符串的结尾处 想要输出反斜线,输入两条 (\)。
注意,如果在任何其它的字符前加了反斜线,反斜线将会被直接输出。
Note: 不像双引号 和heredoc语法结构, 在单引号字符串中的变量 和特殊含义的字符将 不会 被替换。
用 [] 或 {} 存取其它类型的变量只会返回 NULL
E、array:   PHP 中的 数组 实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。
可以用 array() 语言结构来新建一个 array。它接受任意数量用逗号分隔的 键(key) => 值(value) 对。
key 可以是 integer 或者 string。如果key是一个 integer 的标准表示,则被解释为整数(例如 "8" 将被解释为 8,而 "08" 将被解释为 "08")。key 中的浮点数被取整为 integer。在 PHP 中索引数组与关联 数组 是相同的,它们都可以同时包含 整型 和 字符串 的下标。
值可以是任意的 PHP 类型。
可以通过明示地设定值来改变一个现有的数组。
这是通过在方括号内指定键名来给数组赋值实现的。也可以省略键名,在这种情况下给变量名加上一对空的方括号(“[]”)。
如果 $arr 还不存在,将会新建一个。这也是一种定义数组的替换方法。要改变一个值,只要给它赋一个新值。如果要删除一个键名/值对,要对它用 unset()。
F、NULL:   特殊的 NULL 值表示一个变量没有值。NULL 类型唯一可能的值就是 NULL。
在下列情况下一个变量被认为是 NULL:
1、被赋值为 NULL。
2、尚未被赋值。
3、被 unset()。
语法
NULL 类型只有一个值,就是大小写不敏感的关键字 NULL(你可以写成NULL,也可以写成null)。

G、类型强制转换 :允许的强制转换有:
(int), (integer) - 转换为 整型(integer)
(bool), (boolean) - 转换为 布尔型(boolean)
(float), (double), (real) - 转换为 浮点型(float)
(string) - 转换为 字符串(string)
(binary) - 转换为二进制 字符串(string) (PHP 6)
(array) - 转换为 数组(array)
(object) - 转换为 对象(object)
(unset) - 转换为 NULL (PHP 5)
0 0
原创粉丝点击