PHP变量
-
概念
- 变量的本质就是内存中的一段空间
- 变量默认总是传值赋值
-
变量的命名规则
- 变量必须以$开头,$符不是变量的一部分,仅表示后面的标识符是变量名
- 除了$以外,以字母、下划线开头,后面跟着数字、字母、下划线
- 变量名区分大小写,$aa和$Aa是两个空间
<?php
$a=10;
$name='Tom';
?>
可变变量
- 可变变量
- 变量名可以变,将变量名存储在另外一个变量中
<?php
$name1='tom';
$name2='berry';
if(rand(1,10)%2){
$name='name1'; //将变量名存储在$name中
}else{
$name='name2';
}
echo $$name;
?>
值传递与地址传递
- 值传递与地址传递
- &表示获取变量的地址
- 值传递中,一个变量变了,另一个变量没有影响,因为是两个空间
- 地址传递中,一个变量变了,另一个也变了,因为两个变量指向同一个空间
<?php
$txt = 'Hello';
$new_txt = &$txt;
echo $new_txt;
?>
<?php
$num1=10;
$num2=&$num1;
$num2=20;
echo $num1;
?>
销毁变量
- 销毁变量
- 用unset()来销毁变量,销毁的是变量名
- 变量值由PHP垃圾回收机制销毁
- 没有变量引用的值是垃圾
<?php
$num1=10;
$num2=&$num1;
unset($num1); //销毁的是变量名
echo $num2;
?>