
上QQ阅读APP看书,第一时间看更新
3.4.1 PHP中的变量声明
PHP中的变量不同于C或Java语言,因为它是弱类型的。在C或Java中,需要对每一个变量声明类型,但是在PHP中不需要这样做。
PHP中的变量一般以“$”作为前缀,然后以字母a~z的大小写或者“_”下划线开头。这是变量的一般表示。
合法的变量名可以是:
$hello $Aform1 $_formhandler (类似我们见过的$_POST等)
非法的变量名如:
$168 $!like
PHP中不需要显式地声明变量,但是定义变量前进行声明并带有注释,这是一个好的程序员应该养成的习惯。PHP的赋值有两种方式,即传值和引用,区别如下:
(1)传值赋值:使用“=”直接将赋值表达式的值赋给另一个变量。
(2)引用赋值:将赋值表达式内存空间的引用赋给另一个变量。需要在“=”左右的变量前面加上一个“&”符号。在使用引用赋值的时候,两个变量将会指向内存中同一个存储空间,所以任意一个变量的变化都会引起另一个变量的变化。
【例3.3】(实例文件:源文件\ch03\3.3.php)
<?php echo "使用传值方式赋值:<br/>"; // 输出 使用传值方式赋值 $a = "风吹草低见牛羊"; $b = $a; // 将变量$a的值赋值给$b,两个变量指向不同的内存空间 echo "变量a的值为".$a."<br/>"; // 输出 变量a的值 echo "变量b的值为".$b."<br/>"; // 输出 变量b的值 $a = "天似穹庐,笼盖四野"; // 改变变量a的值,变量b的值不受影响 echo "变量a的值为".$a."<br/>"; // 输出 变量a的值 echo "变量b的值为".$b."<p>"; //输出 变量b的值 echo "使用引用方式赋值:<br/>"; //输出 使用引用方式赋值 $a = "天苍苍,野茫茫"; $b = &$a; // 将变量$a的引用赋给$b,两个变量指向同一块内存空间 echo "变量a的值为".$a."<br/>"; // 输出 变量a的值 echo "变量b的值为".$b."<br/>"; // 输出 变量b的值 $a = "敕勒川,阴山下"; /* 改变变量a在内存空间中存储的内容,变量b也指向该空间,b的值也发生变化 */ echo "变量a的值为".$a."<br/>"; // 输出 变量a的值 echo "变量b的值为".$b."<p>"; // 输出 变量b的值 ?>
本程序运行结果如图3-3所示。

图3-3 程序运行结果