PHP变量是程序中用来存储各类数据的容器,无需预先声明变量类型,赋值即定义,使用起来非常灵活。理解变量的声明规则和使用方法,是学习PHP开发的第一步。

PHP变量的基本声明规则
PHP中所有变量都以美元符号$开头,后面跟着变量名。变量名的命名需要遵循一定规范:只能包含字母、数字和下划线,且不能以数字开头,变量名区分大小写。
声明变量的方式非常简单,直接给变量赋值即可,不需要额外的关键字声明。下面是基础的变量声明示例:
<?php // 声明一个字符串类型的变量 $name = "张三"; // 声明一个整数类型的变量 $age = 25; // 声明一个浮点数类型的变量 $score = 95.5; // 声明一个布尔类型的变量 $is_student = true; // 输出变量内容 echo $name; echo "<br>"; echo $age; ?>
变量的命名规范
虽然PHP对变量名的限制不多,但遵循良好的命名规范可以让代码更易读。常见的规范包括:
- 变量名尽量使用有意义的英文单词,多个单词之间可以用下划线分隔,比如
$user_name - 避免使用单个字母作为变量名,除非是临时使用的循环变量
- 不要使用PHP的关键字作为变量名,比如
$if、$else等
变量的作用域
变量的作用域指的是变量在代码中可以被访问的范围,PHP的变量主要有三种作用域:
局部作用域
在函数内部声明的变量属于局部变量,只能在函数内部访问,函数外部无法直接使用。
<?php
function test() {
$local_var = "我是局部变量";
echo $local_var;
}
test(); // 可以正常输出内容
// echo $local_var; 这行代码会报错,因为外部无法访问局部变量
?>全局作用域
在函数外部声明的变量属于全局变量,默认情况下函数内部无法直接访问,如果需要在函数内部使用全局变量,需要使用global关键字声明。
<?php
$global_var = "我是全局变量";
function test() {
global $global_var;
echo $global_var;
}
test(); // 输出 我是全局变量
?>静态变量
在函数内部声明的静态变量,会在函数调用结束后保留其值,下次调用函数时不会重新初始化。
<?php
function test() {
static $count = 0;
$count++;
echo $count;
}
test(); // 输出1
test(); // 输出2
test(); // 输出3
?>可变变量
PHP支持可变变量的特性,即一个变量的变量名可以动态设置。可变变量的使用方式是在变量名前再加一个美元符号$。
<?php $var_name = "test"; $test = "可变变量的内容"; echo $$var_name; // 输出 可变变量的内容 ?>
变量的常用操作
除了基础的赋值和输出,变量还有很多常用操作:
- 变量赋值:可以直接赋值,也可以通过其他变量赋值,比如
$a = $b - 变量销毁:使用
unset()函数可以销毁指定的变量 - 判断变量是否设置:使用
isset()函数可以判断变量是否已经声明且不为null - 判断变量是否为空:使用
empty()函数可以判断变量是否为空值
下面是这些操作的示例:
<?php $username = "李四"; $new_name = $username; // 通过其他变量赋值 echo $new_name; // 输出 李四 unset($username); // 销毁变量 // echo $username; 这行会报错,因为变量已经被销毁 var_dump(isset($new_name)); // 输出 bool(true) $empty_var = ""; var_dump(empty($empty_var)); // 输出 bool(true) ?>