在PHP程序中存储信息的主要方法是使用变量。以下是关于PHP中变量的最重要的知识。
PHP中的所有变量都用一个前导的美元符号($)表示。
变量的值是最近赋予的值。
变量赋值使用=运算符,左边的变量被赋予右边的表达式的值。
变量不需要在赋值之前声明。
PHP中的变量没有内在的类型 – 变量使用前不要关心它用来存储的是一个数字还是一串字符。
分配之前使用的变量所具有默认值。
PHP在自动将类型从一个类型转换为另一个类型也没有问题。
PHP变量与Perl中的变量是相似的。
PHP中共有八种数据类型,我们用它来构造变量 –
整数 – 是整数,没有小数点,例如:123, 889等。
双精度 – 是浮点数,如3.14159或69.1。
布尔值 – 只有两个可能的值是:True或False。
NULL – 是一个只有一个值的特殊类型:NULL。
字符串 – 是字符序列,如:"abc123","PHP支持字符串操作"等。
数组 – 是其他值的命名和索引集合。
对象 – 是程序员定义的类的实例,它可以打包特定于类的其他类型的值和函数。
资源 – 是特殊变量,用于存放对PHP外部资源的引用(如数据库连接)。
前五种称为简单类型,后两种(数组和对象)称为复合类型 – 复合类型可以包装其他任意类型的任意值,而简单类型则不能。我们将在本章中仅解释简单的数据类型。而数组和对象 将分开解释。
1. 整型
整型是整数,它们没有小数点,如2218。它们是最简单的类型,它们对应于简单的整数,包括正数和负数。 整数可以分配给变量,也可以用在表达式中 –
整数可以是十进制(10进制),八进制(8进制)和十六进制(16进制)格式。 十进制格式是默认值,八进制整数用前导0来指定,而十六进制有一个前导0x。
对于最常见的平台,最大的整数是(2 ** 31-1或2147483647),最小的整数是(-2 ** 31-1或-2147483647)。
2. 双精度
双精度的值类似于3.14159或249.21这样的浮点值。 默认情况下,双精度打印需要最小小数的位数。例如下面代码 –
执行上面示例代码,得到以下结果 –
2.28888 + 2.21112 = 4.5
3. 布尔类型
布尔类型只有两个可能的值,即:TRUE和FALSE。PHP提供了几个常量来用作布尔值:TRUE和FALSE,可以像这样使用 –
<?php if (TRUE) print("This will always print
"); else print("This will never print
"); ?>
将其他类型解释为布尔值
以下是确定布尔类型中任何值的“真值”的规则 –
如果该值是一个数字,那么如果完全等于零则为假,否则为真。
如果值是一个字符串,如果字符串为空(字符为零个)或字符串为"0",则为false,否则为true。
NULL类型的值总是为false。
如果该值是一个数组,如果它不包含,那么它的值是false,否则是true。 对于包含值的对象,意味着它拥有一个已经赋值的成员变量。
有效的资源是true(尽管一些成功返回资源的函数在失败时会返回FALSE)。
不要使用双精度(double类型)作为布尔值。
当在布尔上下文中使用时,以下代码每个变量都具有嵌入其名称中的真假值。
4. NULL值
NULL是一个只有一个值的特殊类型:NULL。要给一个变量赋予NULL值,可以像下面这样分配它 –
常量NULL特殊常量大写,但实际上是不区分大小写的; 也可以这样书写 –
已分配NULL值的变量具有以下属性 –
它在布尔上下文中评估求值为FALSE。
当使用isset()函数进行测试时,它将返回FALSE。
5. 字符串
它们是字符序列,如"PHP支持字符串操作"。以下是字符串的有效示例:
单引号的字符串几乎是字面上的,而双引号的字符串用它们的值替换变量,以及特别解释某些字符序列。
<?php $var = "name"; $literally = 'My $var will not print!'; print($literally); print "
"; $literally = "My $var will print!"; print($literally); ?>
执行上面示例代码,得到以下结果 –
My $var will not print! My name will print!
对字符串长度几乎没有限制 – 在可用内存的范围内任意长度。由双引号分隔的字符串(如:"this")在PHP中通过以下两种方式进行预处理 –
某些以反斜杠(“)开头的字符序列被替换为特殊字符;
变量名称(以$开头)被替换为其值的字符串表示形式;
转义字符序列替换是 –
n被替换为换行符;
r被替换为回车符
t被替换为制表符
$被替换为美元符号($)
"被替换为回车符
"被替换为单个双引号(")
'被替换为单个单引号(')
6. Here-Doc界定符
可以使用here-doc将多行分配给一个字符串变量 –
今天学习什么?http://www.yiibai.com/ 选择你喜欢的内容学习吧! MY_XML; echo << interpolation.Note that the here document terminator must appear on a line with
just a semicolon. no extra whitespace!
END; print $channel; ?>
执行上面示例代码,将产生以下结果 –
7. 变量范围
可以为一个定义变量声明它在程序中可用范围。 PHP变量范围类型有以下四种 –
8. 变量命名
命名变量的规则是 –
变量名称必须以字母或下划线字符开头。
变量名可以由数字,字母,下划线组成,但不能使用+, - ,%,(,),.,&等字符。
变量名称的长度不限制。
¥ 我要打赏 纠错/补充 收藏