PHP 8从入门到精通(视频教学版)
上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 程序运行结果