PHP 的变量类型不多,有以下五种:
string
integer
double
array
object string 即为字符串变量,无论是单一字符或数千字的字符串都是使用这个变量类型。值得注意的是要指定字符串给字符串变量,要在头尾加上双引号 (例如: "这是字符串")。在要让字符串换行时,可使用溢出字符,也就是反斜线加上指定的符号,若是 \x 加上二位数字,如 \xFE 即表十六进位字符,详见下表:
符号
意义
\"
双引号
\
反斜线
\n
换行
\r
送出 CR
\t
跳位 (TAB)
integer 为整数型别。在 32 位的操作系统中,它的有效范围是 -2,147,483,648 到 +2,147,483,647。要使用 16 进位整数可以在面加 0x。
double 为浮点数型别。在 32 位的操作系统中,它的有效范围是 1.7E-308 到 1.7E+308。
array 为数组变量,可以是二维、三维或者多维数组,其中的元素也很自由,可以是 string、integer 或者 double,甚至是 array。
object 为类变量,目前在 PHP 中的类不多,若论及类,Microsoft 的 ASP 类仍然较 PHP 的默认类多,相信这有赖大家的努力。不过话又说回来,Web CGI 程序要求的是效率,以完全面向对象的方式,恐怕用户在浏览时也会因为程序执行速度慢而很不耐烦吧。
要使用变量,只要在英文字符串前面加个美元号 $ 即可,目前变量名称仍不能使用中文。至于变量的大小写是不一样的,对开发 PHP 程序的 TEAM 来说,最好使用相同的变量使用风格,以免届时因为变量大小的问题,花许多无谓的时间去找寻问题点,那就麻烦了。
以下为变量的使用范例:
$mystring = "我是字符串";
$WilsonPeng = "真是认真的作者";
$NewLine = "换行了\n";
$int1 = 38;
$int2 = 49;
$hexint = 0x10;
$float1 = 1.732;
$float2 = 1.4E+2;
$MyArray1 = array("子", "丑", "寅", "卯");
$MyArray2 = array(
"地支" => array("子", "丑", "寅", "卯"),
"生肖" => array("鼠", "牛", "虎", "兔"),
"数字" => array(1, 2, 3, 4)
);
类的使用上就比较麻烦了,要先定义类别,甚至必须先要方法,才能使用类,如下例:
class foo {
function do_foo () {
echo "Doing foo.";
}
}
$bar = new foo;
$bar -> do_foo ();
更多有关类的讨论,参考 类
此外,还有布尔值 (boolean),通常 1 即为 true,0 为 false。
在变量之间,若要转换类型,在 PHP 程序中是很自由的,直接就拿来用了,不必经过特殊的转换函数。当然,浮点数转成整数就有点牵强了,不过可以将浮点数转成字符串,也是很好处理。