PHP 基础语法

环境装好后,我们来系统过一遍 PHP 的基础语法。这一章不涉及复杂概念,只讲程序"长什么样"——PHP 标记怎么写、怎么输出内容、怎么写注释、哪些东西区分大小写。读完你就能看懂任何 PHP 代码的大致框架。

1. PHP 标记:HTML 与 PHP 的边界

PHP 文件默认是 HTML,只有被 PHP 标记包裹的部分才会被 PHP 引擎解析执行。一对完整的 PHP 标记是最常见的写法:

<!DOCTYPE html>
<html>
<head><title>测试</title></head>
<body>
    <!-- 标准写法:推荐 -->
    <p>现在时间: <?php echo date("Y-m-d H:i:s"); ?></p>

    <!-- 短输出标签(等价于 echo) -->
    <p>作者: <?= "小明" ?></p>

    <!-- 文件末尾如果是纯 PHP,可以省略闭合 ?>
    <!-- 这样能避免 "headers already sent" 错误 -->
</body>
</html>

几个要点:

2. 输出语句:echo 与 print

PHP 有两个基础输出语句,日常几乎只用 echo:

<?php
// echo:最常用,可一次输出多个值,无返回值
echo "Hello";
echo "Hello", " ", "World";   // 一次输出多个
echo "<br>";

// print:只能输出一个值,有返回值(总是 1)
print "Hello";
$result = print "Hi";         // $result 为 1

// echo 略快,日常用 echo 即可

简单记:echo 没有返回值、可输出多个参数、略快;print 有返回值 1、只能接一个参数。99% 的场景用 echo 即可。

3. 变量的初步认识

PHP 变量以 $ 美元符号开头,这是 PHP 最显眼的特征。在双引号字符串里可以直接嵌入变量:

<?php
$name = "小明";
$age = 25;

// 双引号里可以直接嵌入变量
echo "我叫 $name,今年 $age 岁。";

// 用花括号消除歧义(推荐写法)
echo "我叫 {$name},今年 {$age} 岁。";

// 单引号不解析变量,原样输出
echo '我叫 $name';            // 我叫 $name

关于单双引号的差异,在第 10 章字符串会详细展开。这里你只需要记住:双引号解析变量,单引号原样输出。新手优先用双引号。

4. 注释

PHP 支持 3 种注释风格,和 C/Java/JS 基本一致:

<?php
// 这是单行注释,双斜杠开头

#  这也是单行注释,Shell 风格(少用)

/*
   这是多行注释,
   可以跨越多行,
   用 /* */ 包裹。
*/

/**
 * 文档注释(DocBlock)
 * 常用于函数/类的说明,
 * PHPDoc 工具能据此生成文档。
 */
function add($a, $b) {
    return $a + $b;
}

文档注释(DocBlock)很重要——PhpStorm、VS Code 等编辑器会读取它,在你调用函数时显示参数说明。给公共函数写 DocBlock 是好习惯。

5. 语句与分号

PHP 每条语句必须以分号结尾,这点和 C/Java/JS 一致。漏写分号是新手最常见的错误,会报 "Parse error: syntax error, unexpected ..."。规则:

6. 大小写敏感规则

PHP 的大小写规则对新手有点绕,这里讲清楚:

<?php
// 关键字不区分大小写
ECHO "hello";      // 等价于 echo
Echo "hello";      // 也可以,但不推荐

// 变量名区分大小写!
$Name = "大写";
$name = "小写";
echo $Name;        // 大写
echo $name;        // 小写
// echo $NAME;     // 报错:未定义变量

// 函数名不区分大小写(但不推荐混用)
function greet() { echo "hi"; }
Greet();           // 输出 hi

// 建议:一律用小写 + 驼峰,永远不要靠"不区分大小写"偷懒

一句话总结:

最佳实践:把所有代码当作区分大小写来写——变量名小写驼峰($userName)、类名首字母大写(User)、常量全大写(MAX_USERS),永远不要靠"不区分"偷懒。

7. 空白与代码风格

PHP 对空格、Tab、换行不敏感(字符串里除外)。为统一风格,推荐遵循 PSR-12 标准(PHP Framework Interop Group 制定的编码规范),要点:

PHP CS Fixerphp-cs-fixer 工具可以自动格式化代码,在团队协作中必不可少。

小结

这一章你了解了 PHP 程序的整体骨架:PHP 标记、echo 输出、注释、分号、大小写规则,以及 PSR-12 编码规范。下一篇我们看 PHP 的变量——这是任何程序里最基础的概念。

← 上一篇 PHP 环境搭建

下一篇 PHP 变量

✈️💬