变 量
1.变量必须以$开头,后面紧跟变量名。
2.注意以下情况:
echo “人民币符合¥像个羊,美元符号$象个钱”; //“$象个钱”会被识别为变量
3.与js的不同:
不支持“只定义不赋值”;
“赋值”是使一个变量名使用一个值;
4.两个方法:isset() / unset()
isset():判断变量名是否存在,存在返回1-true,不存在返回0-false(如果一个变量的值是null-不符合变量定义规则,也是返回false)
unset():断开变量名跟数据之间的“引用关系”
5.命名规则:
数字(不能开头)、字母、下划线;不能与系统关键字重名
6.传值方式(值传递 / 引用传值):
值传递(默认):只是将值复制一份进行传递,复制完成后两个变量相互独立。
引用传值:将引用关系同时复制传递。关键符号&
7.可变变量
一个变量a的值,是另一个变量的名。理论上可多层嵌套:
8.预定义变量(超全局变量):数据类型是数组
常用的:$_GET, $_POST, $_SERVER, $_REQUEST, $GLOBALS, $_COOKIE, $_SESSION...
$_GET:
常用形式1:<a href=”abc.php?uName=test1&uPwd=123” > 提交</a> //不能有空格
常用形式2:<script> location.href = “abc.php?uName=test1&uPswd=123”; </script> //不能有空格
$_POST(多用于表单的数据提交):
用法同$_GET,要注意多选框的name值要用数组的形式命名。
常 量
1.定义(通常全大写):
define(“常量名”, 常量值) //常用形式
const 常量名 = 常量值 //只能在“最顶层”的代码域中使用
2.使用:
直接使用 / constant(“常量名”); //常量在双引号字符串中不能识别
3.常量与变量的区别:
定义/使用形式不同:常量无需$符号
可变程度不同:常量的值不可以改变,常量也不可以销毁
作用范围不同:常量具有超全局作用域 (函数内外都可以直接使用)
可用类型不同:常量只能存储标量类型:int,float,string,bool
4.判断常量是否存在:defined()
常用形式:if ( defined (某常量名) == false ){ 这里可以去定义该常量;}
或者:$result = defined (某常量名); //结果是true或false
5.预定义常量(可以直接使用的)
比如:M_PI(圆周率), PHP_OS(操作系统), PHP_VERSION(php版本号),PHP_INT_MAX(php中的最大的整数值)
参考手册>附录>保留字列表>预定义常量
6.魔术常量(值会随着一定的条件(环境)而变化的常量)
比如(都是两个_):__DIR__(当前网页文件的所在目录),__FILE__(当前网页文件),__LINE__(当前这一行)
参考手册>语言参考>常量>魔术常量