语法
//注意:常量在一般情况常用大写字母表示,
定义后不能改变常量的值,
不能用unset();取消常量值,
常量不用理会常量作用范围任何地方都可以使用,
在函数内,变量的使用需要声明常量的作用域globay变量名(全局作用)local(局部)static(静态)
常量在声明时要进行赋值;
-----------------------------------------------------------------------------------------------------------------------
define('常量名',‘常量值’)
例子:定义一个常量money,赋值为130;
代码如下:
<?php
define('money','180');//定义一个叫money的常量,赋值180
echo money; //输出常量money,输出结果180.
在上述例子中已经声明了常量money的值为180,这个money的常量只能被读取是无法修改的。
变量是存储信息的容器。也就是说声明一个变量,变量是可以通过某种指令去修改它的值。变量对大小写敏感,NAME和name代码不同的两个变量。
语法:
$ 变量名=变量值
声明一个叫name的变量,取值叫tom;再声明一个叫Name的变量,取值汤姆;
代码与运行结果如下代码演示
<?php
$name='tom';
$Name='汤姆';
echo $name;//输出小写tom
echo $name.$Name//字符串连接符合‘.’,可以连接多个字符串,输出结果tom汤姆;
$name='TOM';
echo $name;//一输出大写TOM
/*一个变量被声明多次,看看上述变量的最近一个,也就是一个变量被定义多次,输出的结果以左后一次为准*/
变量被定义多次,输出的时候看看最后一次声明的变量值多少,就输出多少。
注释:PHP 变量名称对大小写敏感!
多单词的命名法:
下划线法:user_name(下划线)
驼峰法:
userName(小驼峰法)
UserName(大驼峰法)
注意:常量命名规则和变量一致,遵循变量命名法;
常量相关常用的函数
isset(); //值如果是null也表示空,存在返回true,不存在返回flase
empty();//判断变量是否为空,null也是空;存在返回true,不存在返回flase
unset();//取消某个变量。
settype();// 某个变量永久性强制转换
gettype();//获取变量的类型
将一个普通变量的值作为可变变量的变量名。可变变量是php独有的特性,可变变量指的是变量名可变,而变量(即普通变量)指的是变量值可变。
说白了就是通过动态获取普通的变量。代码演示吧。通过多加一个$符号获取
<?php
$a='ABC';
$ABC='DEF';
$DEF='XYZ';
echo $a $$a $$$a; //$$a输出ABC变量的值,$$$a输出DEF变量的值,通过多输出一个美元符号$获取变量。
①传值赋值
普通的赋值方式,相当于给变量赋予一个值。
语法
$ 变量名1=$变量名2
<?php
$a=180;
echo $a;//输出变量a的值 输出显示180
$b=$a;//将a变量的值赋值给变量a 把180赋值给变量b
echo $b; //输出b的值 显示为180
$a='haha'; //a变量重新被定义为‘haha’
echo $a,$b //输出a,b变量值,输出a为被重新定义的值,b的值还是之前a赋值的。不会随着a的改变而改变。
②引用赋值
给变量赋予一个另外变量的值,当被赋予的变量值改变时,输出时也会改变。
引用变量语法。
$变量名1=&$变量名2
<?php
$a=180;
echo $a;//输出变量a的值 输出显示180
$b=&$a;//将a变量的值赋值给变量a 把180赋值给变量b
echo $b; //输出b的值 显示为180
$a='haha'; //a变量重新被定义为‘haha’
echo $a,$b //输出a,b变量值,输出a为被重新定义的值,输出b变量的值随a变量改变也会改变。输出的值为haha haha
-----------------------------------------------------------------------------------------------------------------------变量的作用域:
在 PHP 中,可以在脚本的任意位置对变量进行声明。
变量的作用域指的是变量能够被引用/使用的那部分脚本
*****************************************************************************************************************
*****************************************************************************************************************
<?php
$a=180;
$b=123;
function int()//新建一个叫int的函数
{global $a;//设置变量a的作用域,b没有设置
echo $a;
echo "<hr>";
echo "$b"; //没有声明b的作用局,该行报错,而且无法输出
}
int();//输出函数
echo $a;
echo "<hr>";
echo $b;
?>
注意:函数以外的声明变量,在函数内部需要用,就要在函数内声明global 变量。
<?php
$x=100;//全局作用域
function DEMO()
{
$y=200;//local作用域,内部声明只能在函数内使用
echo "函数内部测试:<br>";
echo "变量x= $x \n";
echo "变量y= $y \n";
}
DEMO();
echo "函数之外测试:<br>";
echo "变量x= $x \n";
echo "变量y= $y \n";
注意:函数之外的global作用域只能外部用,函数内部声明的变量(local作用域),只能函数内部执行使用。
<?php
function demo()
{
static $a=0;//定义static静态作用域,否则函数内调用一次呗删除,不要删除时定义static
echo "$a";
$a++;
}
demo();
echo "<br>";
demo();
echo "<br>";
demo();
echo "<br>";
demo();
echo "<br>";
demo();
注意:函数内部的变量,被函数内部调用或者执行一次后,会被删除,如果继续函数内部调用的话,可以在声明变量时候声明变量的作用域static(静态),没有定义则,只能被调用一次,定义static,可以函数内部多次调用,但是还是local内部作用域,在函数之外还是无法调用。