首页 > 编程笔记 > PHP笔记 阅读:3

PHP变量和常量的用法(附带实例)

PHP 程序运行期间,会产生一些临时数据,这些数据可以通过变量保存。

变量是保存可变数据的容器,变量的表示方式为“$变量名”,变量名遵循标识符的命名规则,例如“$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 个参数:
下面演示如何使用 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

相关文章