PHP已死?问问独角兽初创公司:PHP成功故事

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

PHP:一个“人人讨厌”,却筑起帝国的语言

\n\n

如果你进入任何一个开发者论坛并问:“用什么语言写初创公司?”,你可能会引发一场圣战。Python vs Go, JavaScript vs Rust。在这场争论中,几乎总是忘记一位老将——PHP。人们说,这只是用于“名片网站”和“恐龙”的语言。但这是错误的。

\n\n

让我们坦诚地说:Facebook(现Meta)、Wikipedia、Etsy、Slack(早期阶段)——它们都是用PHP编写的。这并非偶然。PHP是一种能让初创公司比你说出“Scale”更快爆发的语言。在本文中,我们将分析具体的成功故事,查看帮助这些公司成长的实际代码,并理解为什么PHP至今仍是MVP(最小可行产品)及更多场景的绝佳选择。

\n\n
免责声明: PythonLib是一个关于Python的网站,但我们尊重常识。PHP不是敌人,而是一个强大的工具,它解决了数千家初创公司的问题。让我们不带偏见地研究它。
\n\n

为什么初创公司选择PHP?成功的三大支柱

\n\n

在进入案例之前,让我们分析一下为什么初创公司的创始人(尤其是在早期阶段)会热衷于PHP。

\n\n

1. 上市速度

\n

在初创公司,时间就是金钱。PHP允许你在一个晚上写出一个可运行的原型。你不需要配置复杂的架构、编写样板代码或等待编译。只需打开<?php,然后开始。

\n\n

2. 廉价的托管和基础设施

\n

PHP是共享托管之王。当基于Node.js或Python的初创公司被迫每月租用20美元的VPS时,PHP项目可以在每月3美元的托管上运行。对于最初的1000名用户来说,这绰绰有余。

\n\n

3. 庞大的社区和现成的解决方案

\n

PHP拥有Laravel、Symfony、Composer。这些不仅仅是框架——这是一个生态系统,其中80%的典型任务已经解决:身份验证、支付、数据库操作。你只需像搭积木一样组装。

\n\n

故事1:Facebook——超越自身的PHP

\n\n

最著名的例子是Facebook。马克·扎克伯格在几周内用PHP编写了Facebook的第一个版本。代码很“脏”,但它能运行并吸引用户。当流量增长到数百万时,Facebook的工程师并没有将所有代码重写为C++(尽管部分是这样做的)。相反,他们创建了HipHop for PHP——一个将PHP代码转换为C++的编译器,后来又创建了HHVM(虚拟机)。

\n\n

主要教训:如果方法得当,PHP可以扩展到无限大。

\n\n

代码示例:初创公司的简单优化

\n

假设你正在编写一个新闻推送。一个天真的PHP实现可能如下所示(并且它适用于100个用户):

\n\n
<?php\n// 糟糕的例子:N+1查询\n$users = $db->query("SELECT id FROM users WHERE active = 1");\nforeach ($users as $user) {\n    $posts = $db->query("SELECT * FROM posts WHERE user_id = {$user['id']}");\n    // ... 输出\n}\n?>
\n\n

对于初创公司来说,这在开始时是正常的。但一旦你有10,000个用户——一切都会崩溃。正确的方法(Facebook在其内部工具中使用的方法):

\n\n
<?php\n// 好的例子:一次查询\n$posts = $db->query("\n    SELECT p.*, u.name \n    FROM posts p \n    JOIN users u ON p.user_id = u.id \n    WHERE u.active = 1\n    ORDER BY p.created_at DESC\n");\n?>
\n\n

结论: 不要害怕在开始时编写“糟糕”的代码。关键是启动并开始收集数据。优化会随之而来。

\n\n

故事2:Etsy——PHP如何帮助手工艺人赚取数十亿

\n\n

Etsy是一个手工艺品市场。该网站完全用PHP编写(目前使用Symfony)。当Etsy成长时,他们遇到了“脏”代码的问题。但他们没有将所有代码重写为Python或Ruby,而是雇佣了工程师来重构PHP代码。

博客

书籍推荐