PHP 教程
PHP 是什么、它现在的样子、以及这套教程怎么学。
PHP 是什么
PHP (PHP: Hypertext Preprocessor) is a server-side scripting language from 1995. Its execution model is direct: the web server receives a request, hands it to the PHP interpreter, which outputs HTML back to the browser. No long-running process, no elaborate bootstrap.
<?php
$name = "世界";
echo "你好,{$name}!\n";
echo "当前 PHP 版本:" . PHP_VERSION . "\n";你好,世界!
当前 PHP 版本:8.3.12它现在的样子
PHP is no longer just a templating language. Version 8.x brings JIT, type declarations, enums, readonly properties, match and constructor promotion, and with Composer's ecosystem (Laravel, Symfony) it supports serious engineering.
| Version | Year | Key features |
|---|---|---|
| 5.6 | 2014 | 常量表达式、可变参数 |
| 7.0 | 2015 | 性能翻倍、标量类型声明、?? |
| 7.4 | 2019 | 箭头函数、类型化属性 |
| 8.0 | 2020 | JIT、命名参数、match、构造器提升 |
| 8.1 | 2021 | 枚举、只读属性、never |
| 8.3 | 2023 | 类型化类常量、json_validate |
能做什么
- 网站与 API —— WordPress、Laravel、Symfony
- 内容管理 —— 全球 40% 以上的网站跑在 PHP 上
- 命令行脚本 —— 用
php script.php直接跑 - 不适合 —— 长驻内存服务、CPU 密集计算(每次请求重建上下文的模型拖后腿)
学习路线
- 语法 —— 变量、类型、字符串、数组、流程控制
- 函数与数组 —— PHP 的数组函数极其丰富,值得单独花时间
- 面向对象 —— 类、接口、trait、命名空间、自动加载
- Web —— 表单、Cookie、Session、文件上传、数据库
- 工程 —— Composer、PDO、框架
php -v; anything below 8.0 cannot run enums, match or named arguments.PHP 是什么
PHP(PHP: Hypertext Preprocessor)是 1995 年诞生的服务端脚本语言。它的执行模型非常直接:Web 服务器收到请求 → 交给 PHP 解释器执行 → 输出 HTML 返回给浏览器。没有常驻进程,没有复杂的启动流程。
<?php
$name = "世界";
echo "你好,{$name}!\n";
echo "当前 PHP 版本:" . PHP_VERSION . "\n";你好,世界!
当前 PHP 版本:8.3.12它现在的样子
PHP 早已不是「只能写模板」的语言。8.x 版本有 JIT、类型声明、枚举、只读属性、match 表达式、构造器属性提升,配合 Composer 的生态(Laravel、Symfony),可以写很正规的工程。
| 版本 | 年份 | 关键特性 |
|---|---|---|
| 5.6 | 2014 | 常量表达式、可变参数 |
| 7.0 | 2015 | 性能翻倍、标量类型声明、?? |
| 7.4 | 2019 | 箭头函数、类型化属性 |
| 8.0 | 2020 | JIT、命名参数、match、构造器提升 |
| 8.1 | 2021 | 枚举、只读属性、never |
| 8.3 | 2023 | 类型化类常量、json_validate |
能做什么
- 网站与 API —— WordPress、Laravel、Symfony
- 内容管理 —— 全球 40% 以上的网站跑在 PHP 上
- 命令行脚本 —— 用
php script.php直接跑 - 不适合 —— 长驻内存服务、CPU 密集计算(每次请求重建上下文的模型拖后腿)
学习路线
- 语法 —— 变量、类型、字符串、数组、流程控制
- 函数与数组 —— PHP 的数组函数极其丰富,值得单独花时间
- 面向对象 —— 类、接口、trait、命名空间、自动加载
- Web —— 表单、Cookie、Session、文件上传、数据库
- 工程 —— Composer、PDO、框架
php -v 确认版本;低于 8.0 的话,枚举、match、命名参数这些示例都跑不了。