PHP变量和常量的用法(附带实例)
PHP 程序运行期间,会产生一些临时数据,这些数据可以通过变量保存。
变量是保存可变数据的容器,变量的表示方式为“$变量名”,变量名遵循标识符的命名规则,例如“$num”就是一个变量。
引用赋值的示例代码如下:
可变变量是将一个变量的值作为变量的名称,以实现动态改变变量的名称。
可变变量的实现非常简单,只需在一个变量前多加一个“$”符号。例如,可变变量 $$a 相当于使用变量 $a 对应的值作为 $$a 变量的名称,示例代码如下:
定义常量的方式有两种,分别是使用 define() 函数和 const 关键字。下面对这两种定义常量的方式进行讲解。
使用 define() 函数的语法格式如下:
下面演示如何使用 define() 函数定义常量,示例代码如下:
define() 函数的第 3 个参数如果设置为 true,表示常量名不区分大小写。值得一提的是,自 PHP 8.0 开始,定义的常量要严格区分大小写,如果将 define() 函数的第 3 个参数设置为 true 会产生警告。
若要获取常量的值,可以使用 echo 输出语句或 constant() 函数。注意,使用 constant() 函数获取常量值时不会直接输出,还需要搭配输出语句输出常量值,示例代码如下:
给常量赋值时,除了使用具体的值外,还可以使用表达式,示例代码如下:
预定义常量的使用非常简单,使用“echo 常量名;”语句即可查看预定义常量的值,下面演示如何使用预定义常量,示例代码如下:
变量是保存可变数据的容器,变量的表示方式为“$变量名”,变量名遵循标识符的命名规则,例如“$num”就是一个变量。
PHP中的变量
在 PHP 中,不需要事先声明就可以对变量进行赋值和使用。PHP变量的赋值
变量赋值的方式分为两种,一种是传值赋值,另一种是引用赋值。下面对这两种变量赋值的方式进行讲解。1) 传值赋值
传值赋值是将“=”右边的数据赋值给左边的变量,传值赋值的示例代码如下:$a = 10; // 定义变量$a,赋值为10 $b = $a; // 将$a的值赋值给$b $a = 100; // 将$a的值修改为100 echo $b; // 输出$b的值,结果为10在上述示例代码中,“$a = 10;”“$b = $a;”“$a = 100;”都是对变量的传值赋值,当变量 $a 的值修改为 100 时,变量 $b 的值依然是 10。
2) 引用赋值
引用赋值是在要赋值的变量前添加“&”符号。在引用赋值后,如果其中一个变量的值发生改变,另一个变量的值也会发生改变。引用赋值的示例代码如下:
$a = 10; // 定义变量$a,赋值为10 $b = &$a; // 将$a的值引用赋值给$b $a = 100; // 将$a的值修改为100 echo $b; // 输出$b的值,结果为100在上述示例代码中,$b 相当于 $a 的别名,当变量 $a 的值修改为 100 时,变量 $b 的值也变成了 100。
PHP可变变量
在开发过程中,为了方便动态地改变一个变量的名称,PHP 提供了一种特殊的变量用法,叫做可变变量。可变变量是将一个变量的值作为变量的名称,以实现动态改变变量的名称。
可变变量的实现非常简单,只需在一个变量前多加一个“$”符号。例如,可变变量 $$a 相当于使用变量 $a 对应的值作为 $$a 变量的名称,示例代码如下:
$a = 'say'; $say = 'Hello'; $Hello = 'Lucy'; echo $a; // 输出结果:say echo $$a; // 输出结果:Hello echo $$$a; // 输出结果:Lucy需要注意的是,如果上述示例中变量 $a 的值是数字,那么可变变量 $$a 就是非法标识符。因此,开发时应根据实际情况使用可变变量。
PHP常量
常量是保存不变数据的容器,常量一旦被定义就不能被修改或重新定义。例如,数学中的圆周率 π 就是常量,其值是固定且不能被改变的。定义常量的方式有两种,分别是使用 define() 函数和 const 关键字。下面对这两种定义常量的方式进行讲解。
1) define()函数
在使用 define() 函数前,先简单介绍函数的作用。函数是一段可重复使用的代码块,用于完成指定的操作,调用函数时传入参数,函数执行成功后返回处理结果。使用 define() 函数的语法格式如下:
define($name, $value, $case_insensitive);在上述语法格式中,define() 函数有 3 个参数:
- $name 表示常量名称,通常使用大写字母;
- $value 是常量值;
- $case_insensitive 用于指定常量名称是否区分大小写,默认值为 false,表示常量名区分大小写。
下面演示如何使用 define() 函数定义常量,示例代码如下:
define('PAI', '3.14');在上述示例代码中,定义的常量名称是 PAI,常量值是 3.14。
define() 函数的第 3 个参数如果设置为 true,表示常量名不区分大小写。值得一提的是,自 PHP 8.0 开始,定义的常量要严格区分大小写,如果将 define() 函数的第 3 个参数设置为 true 会产生警告。
若要获取常量的值,可以使用 echo 输出语句或 constant() 函数。注意,使用 constant() 函数获取常量值时不会直接输出,还需要搭配输出语句输出常量值,示例代码如下:
echo '圆周率=', PAI; // 输出结果:圆周率=3.14 echo '圆周率=', constant('PAI'); // 输出结果:圆周率=3.14
2) const关键字
使用 const 关键字定义常量时,在 const 关键字后面跟上常量名称,再使用“=”给常量赋值。给常量赋值时,除了使用具体的值外,还可以使用表达式,示例代码如下:
const R = 5; echo '半径=', R; // 输出结果:半径=5 const D = 2 * R; echo '直径=', D; // 输出结果:直径=10在上述示例代码中,给常量 R 赋值时,使用具体的值 5;给常量 D 赋值时,使用了表达式“2 * R”。
PHP预定义常量
PHP 预定义了一些常量,以方便开发人员直接使用。常用的预定义常量如下表所示:预定义常量名 | 功能描述 |
---|---|
PHP_VERSION | 获取 PHP 的版本信息 |
PHP_OS | 获取运行 PHP 的操作系统信息 |
PHP_INT_MAX | 获取当前 PHP 版本支持的最大整型数字 |
PHP_INT_SIZE | 获取当前 PHP 版本的整数大小,以字节为单位 |
E_ERROR | 表示运行时致命性错误 |
E_WARNING | 表示运行时警告错误(非致命) |
E_PARSE | 表示编译时解析错误 |
E_NOTICE | 表示运行时提醒信息 |
预定义常量的使用非常简单,使用“echo 常量名;”语句即可查看预定义常量的值,下面演示如何使用预定义常量,示例代码如下:
echo PHP_VERSION; // 输出结果:8.2.3 echo PHP_OS; // 输出结果:WINNT