0Pricing
PHP Academy · 课时

在 PHP 中声明变量

了解 PHP 变量如何借助 $ 前缀工作,以及动态类型的含义。

在 PHP 中声明变量 是 CoddyKit 上的免费 PHP Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 PHP Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 PHP Academy 课程共包含 4 节课。

什么是变量

变量是一个带名称的容器,用于保存程序可以读取和更改的值。

  • 在 PHP 中,每个变量名都以美元符号开头:$name
  • 变量名区分大小写:$age 和 $Age 是不同的变量
  • 名称必须以字母或下划线开头,不能以数字开头

PHP 是一种动态类型语言——您无需声明类型;PHP 会根据您赋予变量的值自动确定类型。

赋值

使用 = 运算符为变量赋值:

<?php
$name = 'Alice';
$age  = 30;
$pi   = 3.14159;
$active = true;

echo $name;   // Alice
echo $age;    // 30

PHP 是动态类型语言

您可以将变量重新赋值为完全不同的类型——PHP 允许这样做:

<?php
$value = 42;        // integer
$value = 'hello';   // now a string — perfectly valid
$value = true;      // now a boolean

echo gettype($value); // boolean

命名约定

PHP 不强制规定命名风格,但社区遵循以下约定:

  • 变量使用 camelCase:$userName、$totalPrice
  • 蛇形命名法也很常见:$user_name
  • 常量使用全大写:define('MAX_SIZE', 100)
  • 在实际代码中,避免使用 $a 或 $tmp 这样的通用名称

可变变量

PHP 有一个颇具特色的功能:可变变量使用一个变量的值作为另一个变量的名称:

<?php
$varName = 'city';
$$varName = 'Istanbul';  // creates $city

echo $city;   // Istanbul
echo $$varName; // Istanbul

使用 define() 和 const 定义常量

常量保存永不改变的值。PHP 提供了两种定义常量的方式:

<?php
define('APP_VERSION', '2.0.1');  // runtime constant
const DB_HOST = 'localhost';      // compile-time constant

echo APP_VERSION;  // 2.0.1
echo DB_HOST;      // localhost
// APP_VERSION = '3.0'; // ERROR — constants can't be changed

检查变量是否存在

使用变量之前,请检查它是否已设置,以避免出现未定义变量提示:

  • isset($var) — 如果变量存在且不为 NULL,则为 true
  • empty($var) — 如果变量为假值(0、''、false、[]、NULL),则为 true
  • unset($var) — 销毁变量

在实践中使用 isset 和 empty

使用 isset 和 empty 保护变量访问:

<?php
$username = '';

if (!isset($username)) {
    echo 'Variable does not exist';
} elseif (empty($username)) {
    echo 'Username is empty';   // this runs
} else {
    echo 'Hello, ' . $username;
}

gettype() 和 var_dump()

在开发过程中检查变量的类型和值:

<?php
$score = 98.5;

echo gettype($score);  // double
var_dump($score);      // float(98.5)

$items = ['a', 'b'];
var_dump($items);
// array(2) { [0]=> string(1) "a" [1]=> string(1) "b" }

按引用赋值

默认情况下,PHP 会复制值。使用 & 按引用赋值,使两个变量指向同一份数据:

<?php
$a = 10;
$b = &$a;  // $b is a reference to $a

$b = 20;
echo $a;  // 20 — changed through $b

预定义超全局变量

PHP 提供了多个内置的超全局数组,您可以在脚本的任何位置使用它们:

  • $_GET — URL 查询参数
  • $_POST — 表单提交数据
  • $_SESSION — 会话数据
  • $_SERVER — 服务器和执行环境信息
  • $_ENV — 环境变量

在 PHP Web 开发中,您会经常使用这些变量。

快速检查

以下哪个是有效的 PHP 变量名?

回顾:PHP 中的变量

关于 PHP 变量的要点:

  • 所有变量名都以 $ 开头
  • PHP 是动态类型语言——类型由值决定
  • 访问可能尚未设置的变量前,使用 isset()
  • 使用 gettype() 和 var_dump() 进行调试
  • 需要创建别名时,使用 & 按引用赋值
  • $_POST 等超全局变量可以在任何位置使用

下一步:了解 PHP 支持的数据类型,以及如何分别使用它们。

常见问题解答

「在 PHP 中声明变量」课时是免费的吗?

是的 — 「在 PHP 中声明变量」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 PHP Academy 课程的其余内容,请升级到 CoddyKit PRO。 PHP Academy 课程共包含 4 节课。

「在 PHP 中声明变量」这节课中我会学到什么?

了解 PHP 变量如何借助 $ 前缀工作,以及动态类型的含义。 你通过在浏览器中直接运行的动手代码来练习 PHP Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 PHP Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 PHP Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「在 PHP 中声明变量」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 PHP Academy 课中编写并运行代码吗?

能。每节 PHP Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 在 PHP 中声明变量
  2. PHP 数据类型概览
  3. 使用 Echo 和 Print 输出
  4. 类型 juggling 与类型转换
← 返回 PHP Academy