脑图概括
实例
基本概念
1、变量是用来存储数据的
2、变量是存在名字的
3、变量是通过名字访问数据的
4、变量的数据是可以改变的
变量的使用
1、定义:在系统中增加对应的变量名字(在内存中开发一块地)
<?php $var;//定义一个变量var
2、赋值:将数据赋值给变量(在定义时直接初始化)
<?php $var=1;//定义一个变量var,并为其赋值为1
3、可通过变量名访问数据
<?php $var=1;//定义一个变量var,并为其赋值为1 echo $var;//输出var
输出结果
4、变量可从内存中删除
使用函数unset()删除变量
<?php $var=1;//定义一个变量var,并为其赋值为1 echo $var;//输出var unset($var);//使用函数unset()删除变量
变量命名规则
1、变量名字必须以$开头;
如果不加会报错
<?php var;
报错如下
2、变量名可由数字、字母、下划线命名,但必须以字母和下划线开头
不可以数字开头
<?php $1var;
报错如下
3、允许中文变量
<?php $我是变量;//定义变量 $我是变量=111;// 给变量赋值 echo $我是变量;//输出变量
运行结果
预定义变量
提前定义的变量,由系统定义的变量,存储许多要用到的数据(预定义变量都是数组)
$_GET:获取所有表单以get方式提交的数据
$_POST:POST提交的数据都会保存在此
$_REQUEST:GET和POST提交的都会保存
$GLOBALS:PHP中所有的全局变量
$_SERVER:服务器信息
$_SESSION:session会话数据
$_COOKIE:cookie会话数据
$_ENV:环境信息
$_FILES:用户上传的文件信息
可变变量
如果一个变量保存的值刚好是另外一个变量的名字,则可直接通过访问一个变量得到另外一个变量的值但需在变量前多加一个$符号
<?php $var1='123456789';//定义变量var1 $var2='var1';//将变量var1的名字存入var2 echo $$var2;//输出var2 ?>
运行结果
变量传值
将一个变量赋值给另一个变量:值传递、引用传递
值传递:将变量保存的值复制一份,并将该值给另外一个变量保存(两个变量无关系) 引用传递:将变量保存值所在的内存地址传递给另外一个变量,两个变量同指一块内存(名字不一样而已)。
值传递
<?php $var1=777;//定义变量$var1并赋值777 $var2=$var1;//值传递 echo $var2;//输出$var2
输出结果
引用传递
<?php $var1=777; $var2=&$var1;//引用传递(传递地址) echo $var2;
运行结果