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>几个要点:
- 完整 PHP 标记是最推荐、兼容性最好的写法,所有服务器都支持。
- 短输出标签是 echo 的简写,常用于模板里嵌入少量动态值。需要在配置里开启
short_open_tag或 PHP 5.4+(自 5.4 起始终可用)。 - 纯 PHP 文件末尾不要写闭合标记(去掉末尾的
?加大于号)。这样可以避免文件末尾意外的空格或换行被输出,从而引发 "headers already sent" 错误。这是 PSR 标准明确推荐的写法。
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 ..."。规则:
- 每条语句后面加分号
;。 - 最后一行语句的分号可以省略(在闭合标记前),但强烈不推荐偷这个懒。
- 控制结构(if、for、function 等)的花括号后不加分号。
6. 大小写敏感规则
PHP 的大小写规则对新手有点绕,这里讲清楚:
<?php
// 关键字不区分大小写
ECHO "hello"; // 等价于 echo
Echo "hello"; // 也可以,但不推荐
// 变量名区分大小写!
$Name = "大写";
$name = "小写";
echo $Name; // 大写
echo $name; // 小写
// echo $NAME; // 报错:未定义变量
// 函数名不区分大小写(但不推荐混用)
function greet() { echo "hi"; }
Greet(); // 输出 hi
// 建议:一律用小写 + 驼峰,永远不要靠"不区分大小写"偷懒一句话总结:
- 变量名:区分大小写(
$name和$Name是两个变量)。 - 关键字(echo、if、function 等):不区分,但永远写小写。
- 函数名:不区分,但永远保持一致。
- 类名:不区分(自动加载时按文件名),建议用首字母大写。
- 常量:默认区分,通常全大写。
最佳实践:把所有代码当作区分大小写来写——变量名小写驼峰($userName)、类名首字母大写(User)、常量全大写(MAX_USERS),永远不要靠"不区分"偷懒。
7. 空白与代码风格
PHP 对空格、Tab、换行不敏感(字符串里除外)。为统一风格,推荐遵循 PSR-12 标准(PHP Framework Interop Group 制定的编码规范),要点:
- 缩进用4 个空格(不是 Tab)。
- 左花括号写在同一行末尾(if、function、class 都是)。
- 关键字全小写:
true、false、null(不是TRUE)。 - 类名
StudlyCaps(首字母大写驼峰);方法名camelCase(小写驼峰)。
用 PHP CS Fixer 或 php-cs-fixer 工具可以自动格式化代码,在团队协作中必不可少。
小结
这一章你了解了 PHP 程序的整体骨架:PHP 标记、echo 输出、注释、分号、大小写规则,以及 PSR-12 编码规范。下一篇我们看 PHP 的变量——这是任何程序里最基础的概念。
← 上一篇 PHP 环境搭建
下一篇 PHP 变量 →