PHP5笔记
·NULL 将被转换成空字符串。
<5>
字符串转换为数值
如果包括“.”,“ e”或“E”其中任何一个字符的话,字符串被当作 float 来求值。否则就被当作整
数。该值由字符串最前面的部分决定。如果字符串以合法的数字数据开始,就用该数字作为其值,否则
其值为 0(零)。合法数字数据由可选的正负号开始,后面跟着一个或多个数,后面跟着可选的指数。
指数是一个“e”或者“E”后面跟着一个或多个数字。
$foo = 1 + "10.5"; // $foo is float (11.5)
$foo = 1 + "-1.3e3"; // $foo is float (-1299)
$foo = 1 + "bob-1.3e3"; // $foo is integer (1)
$foo = 1 + "bob3"; // $foo is integer (1)
$foo = 1 + "10 Small Pigs"; // $foo is integer (11)
$foo = 4 + "10.2 Little Piggies"; // $foo is float (14.2)
$foo = "10.0 pigs " + 1; // $foo is float (11)
$foo = "10.0 pigs " + 1.0; // $foo is float (11)
<5>
数组转换
·对于任何的类型:整型、浮点、字符串、布尔和资源,如果将一个值转换为数组,将得到一个仅有
一个元素的数组(其下标为 0),该元素即为此标量的值。
·如果将一个对象转换成一个数组,所得到的数组的元素为该对象的属性(成员变量),其键名为成
员变量名。
·如果将一个 NULL 值转换成数组,将得到一个空数组。
<5>
对象转换
如果其它任何类型的值被转换成对象,则建立一个stdClass 的实例。如果该值为 NULL,则新的
实例为空。对于任何其它的值,名为 scalar 的成员变量将包含该值。
<6>
资源转换
无法将其它类型的值转换为资源。
变 量
PHP 中的变量用一个美元符号后面跟变量名来表示,变量名是区分大小写的。 一个有效的变量名
由字母或者下划线开头,后面跟上任意数量的字母,数字,或者下划线。
[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
变量不用显示定义,直接给没有定义的变量赋值就能创建一个变量。使用 unset删除变量,isset
来判断变量是否存在。
变量有两种赋值方式,值传递和引用传递。所谓值传递就是当一个表达式给另一个变量赋值时,整
个原始表达式的值被赋值到目标变量。所谓引用传递,就是将新的变量指向原始变量。
变量 = 变量 【值传递,改变一个变量的值不会影响到另一个变量】
变量 = &变量 【引用传递,改变一个变量的值会影响的另一个变量】
变量 = 表达式 【值传递】
变量 = &表达式 【非法的】
PHP 提供了大量的预定义变量,但其中有许多变量依赖于运行的服务器及其它因素。
PHP 还提供了一套附加的预定数组,这些数组变量包含了来自 web 服务器、运行环境和用户输入
的数据,它们在全局范围内自动生效。因此通常被称为自动全局变量或者超全局变量。如果某些变量没
有设定,它们的对应的 PHP 预定义数组也是空的。
- 6 -