现在真的还有人用 PHP 吗?
每次看到 GitHub 年度语言排名,PHP 总是在第十名左右晃荡。前端圈的人提起 PHP 就露出"我懂"的笑容,好像这是一种已经被淘汰的语言。
说个冷知识:2025 年全球网站里大约 75% 的服务端语言仍然是 PHP。WordPress 占了全球 CMS 市场的 60% 以上。你正在看的这个博客,后端大概率也跑了 PHP。
所以"没人用 PHP"是个错觉。真相是:用的人太多了,多到已经没人讨论了。
为什么 PHP 被黑得这么惨
PHP 被黑不是没道理的。早期的 PHP(4.x、5.2 时代)确实是坨啥都能跑但啥都跑不好的东西。
全局函数命名没有一致性——strlen()、strpos()、str_replace() 三种不同风格混在一起。mysql_* 函数用了十几年才被废弃,期间制造了大量 SQL 注入漏洞。register_globals 在 2012 年才从默认配置中移除,之前你写 $user_id 可能直接从 URL 参数里冒出来。
这些历史包袱让 PHP 背上了"不安全"“混乱”"入门太低导致代码质量差"的标签。再加上 PHP 社区早期大部分教程的质量确实不行——教你怎么写代码但不教你怎么写安全的代码——导致 PHP 项目烂代码的比例特别高。
但这是 2015 年以前的 PHP。PHP 7 是一个分水岭。
现代的 PHP 是什么样
PHP 7(2015 年)带来了 Zend Engine 3.0,性能提升 2-3 倍。PHP 8(2020 年)带来了 JIT 编译器、命名参数、联合类型、match 表达式。PHP 8.3(2023 年)进一步完善了类型系统。
现在的 PHP 代码长这样:
<?php
declare(strict_types=1);
namespace App\Service;
readonly class OrderService
{
public function __construct(
private PaymentGateway $payment,
private OrderRepository $repository,
) {}
public function createOrder(CreateOrderDTO $dto): Order
{
$order = Order::create(
userId: $dto->userId,
items: $dto->items,
totalAmount: $this->calculateTotal($dto->items),
);
$this->repository->save($order);
$this->payment->charge($order);
return $order;
}
private function calculateTotal(array $items): Money
{
return array_reduce(
$items,
fn(Money $carry, OrderItem $item) => $carry->add($item->total()),
new Money(0, 'CNY'),
);
}
}
严格的类型声明(strict_types=1)、命名空间、只读类、命名参数、箭头函数、枚举——现代 PHP 的代码质量完全不输给 Java 或 TypeScript。
Laravel 框架也让 PHP 开发变成了完全不同的体验。Eloquent ORM、Artisan CLI、队列系统、事件系统、依赖注入容器——写 Laravel 的感受更像写 Ruby on Rails 而不是写传统 PHP。
PHP 真正的优势在哪里
第一,部署成本为零。 一个 PHP 文件扔到 Apache/Nginx 的目录里就能跑。不用像 Go 那样编译,不用像 Java 那样配 JVM,不用像 Node.js 那样起进程守护。共享主机 5 块钱一个月的空间就能跑 PHP——这直接催生了 WordPress 生态的爆发。
第二,开发速度。 因为 PHP 的"请求-响应"模型天然契合 Web 开发,你不用管连接池、事件循环、内存泄漏。每个请求独立运行,请求结束内存回收。这听起来不"高级",但超级实用。
第三,WordPress 生态。 这是 PHP 最不可替代的一点。如果你想做 WordPress 主题开发、插件开发——只能用 PHP。全球 WordPress 的生态价值是几百亿美元级别,而且每年还在增长。
第四,Laravel 生态。 Laravel 的生态成熟度在 Web 框架里能进前三(跟 Rails、Django 一个级别)。Forge 管服务器、Vapor 管 Serverless、Nova 管后台、Spark 管 SaaS 计费——你想做的东西大概率已经有现成的 Laravel 方案。
PHP 的致命弱点
不回避问题:
并发处理弱。 PHP 的传统模型是一个请求一个进程/线程。虽然 Swoole、RoadRunner、FrankenPHP 这些方案能提升并发,但跟 Go 的 goroutine 或 Node.js 的事件循环比,确实不在一个量级。
不适合长连接场景。 WebSocket、实时推送——这些是 PHP 的痛点。你要做聊天应用、实时协作工具,PHP 不是好选择。
不适合 CPU 密集型计算。 虽然 PHP 8 有 JIT,但它的定位从来不是计算密集。做图像处理、机器学习推理——别用 PHP。
国内岗位结构分化。 国内 PHP 岗位大部分是 WordPress 建站和 Laravel 业务开发。高薪岗位集中在字节、腾讯这些大厂的 Go/Java 技术栈。PHP 开发者的薪资天花板确实比 Go/Java 低一些。
什么人该学 PHP
直接学 PHP,如果:
- 你想做 WordPress 开发——主题、插件、建站服务。这个市场大且稳定,WordPress 不会消失。
- 你想快速做出一个产品——独立开发、MVLP、个人项目。PHP + Laravel 的开发速度极快。
- 你在做内容型网站——博客、企业站、电商站。PHP 就是这个领域的王者。
- 你想找一份建站公司的工作——这些公司 90% 用 PHP,而且岗位稳定。
- 你预算有限——5 块钱的虚拟主机就能跑 PHP,Go/Java 起步就得 VPS。
别学 PHP,如果:
- 你的目标是进大厂做后端——学 Go 或 Java,PHP 的岗位少。
- 你想做高并发系统——学 Go 或 Rust,PHP 不是为这个设计的。
- 你想做实时应用——学 Node.js 或 Go。
- 你在乎别人怎么看你的技术栈——这不理性,但很多人确实在意。
PHP vs 其他语言的选择对照
| 场景 | 推荐 | 理由 |
|---|---|---|
| 个人博客/企业站 | PHP | WordPress 生态成熟 |
| 快速 MVP | PHP (Laravel) | 开发速度最快 |
| 大厂后端 | Go / Java | 岗位多、薪资高 |
| 高并发服务 | Go | goroutine 是天然优势 |
| 实时聊天 | Node.js / Go | 长连接是 PHP 弱项 |
| 数据分析 | Python | 库生态碾压 |
| SaaS 产品 | PHP (Laravel) | Spark/Vapor 生态成熟 |
最后
"没人用 PHP"这句话的能量在于:说的人都是前端/移动端开发者,他们确实不用。但另一边,全球 WordPress 站长、Laravel 开发者、Magento/Shopify 生态的人——都在默默用 PHP 赚钱。
PHP 的问题从来不是"没人用"。问题是它在中文互联网的讨论热度低,给人一种"过时"的错觉。但实际上,PHP 8.x 的质量和性能完全可以胜任绝大多数 Web 应用。
我的态度是:别被技术圈的氛围带着走。根据你要做的事情选语言,而不是根据别人怎么评价来选。
如果你做的事是内容型网站、企业应用、快速产品验证——PHP 仍然是最务实的选择之一。