这篇文章写了一段时间,改了改了改了,就是不知道什么时候出。最近发布的PHP8让我觉得“是时候了”。每个月我都会看到有人说PHP已经过时了,我们不应该再使用它了。如果你在某个论坛或StackOverflow上看到关于“学习PHP”的问题,100%你会看到有人发布类似“你为什么要学习PHP?学习一些很棒的东西不是很好吗,比如‘某个人’语言'”的评论。我写PHP已经将近20年了(可能更长,我不太记得是什么时候开始的)。在其他语言中,大多数时候,我只是忽略了大部分对话。这么多年过去了,PHP已经渐渐“失去了生命力”,我早就应该停止使用它了。我不是任何语言的专家,关于PHP我还有很多东西要学习,但我发现自己一次又一次地选择它。偶尔看到一些写得很好的文章告诉人们不要使用PHP,我几乎被说服了,所以我花了很多时间学习其他语言。我必须承认,这些探索对我来说非常有益。虽然我在使用上可能永远达不到专家水平,但学习其他语言让我对程序员这一职业有了更深入的了解。如果要从本文中学到一件事,那就是:学习新语言。但并不是因为“PHP已死”——这是错误的观点。你想学习其他语言因为它对你作为程序员有好处。如果PHP真的要消亡,那么你应该学习其他语言。但此刻,它并没有失去生机。对于很多写PHP的程序员来说,当他们需要为自己的选择辩护时,可能会先展示一些表格,这些表格可以看出PHP在全网的流行程度。虽然这些数字令人鼓舞,但我怀疑它们是否具有误导性。我们必须认识到,PHP之所以流行,是因为人们喜欢WordPress。不管你喜不喜欢WordPress,你都不得不承认它的存在是必不可少的。但说实话,WordPress的缺陷还是很多的,而且不在少数。但我知道很多人用WordPress做了很多了不起的事情并赚了很多钱。PHP不是WordPress,尽管WordPress深深植根于PHP历史的土壤中,但PHP比WordPress好很多很多。WordPress有很多不足之处,PHP也是如此,但这并不意味着它们不适用于每个项目。我一般不会用C++来写网络程序,至少它会排在我选择列表的最后。但这并不是说C++是一门不好的语言,它只是不适用,就像我不能用PHP来写硬件驱动程序或任何与AI相关的东西,这超出了它的能力范围。语言的选择当然也和你自己对它们的掌握程度密切相关。俗话说:时间就是金钱,用一种新语言从事一个项目往往令人望而生畏,使本已紧张的日程变得更糟。我对PHP比较熟悉,所以倾向于优先选择它。我懂一点Python,但我更喜欢编写PHP。我也可以选择Python来完成相同的任务,但它可能需要两倍的时间(至少一开始是这样)。这并不是说我不会再使用Python或者我对Python有任何抱怨,只是说PHP是我的第一选择。学习一门编程语言并不难,有经验的程序员可能在周末就能掌握一门语言的要点。但这并不意味着他们懂这种语言。知道哪个内置函数做了什么不叫了解一门语言,你必须有足够的经验才能知道什么时候使用哪个特性,或者理解整个生态系统是如何组合在一起的。我知道PHP,但我也知道如何设置NginxWeb服务器,如何配置FPM或opcache。我掌握的足够多,能够摆脱依赖的影响,做出好的选择。我知道如何在生产中安全地部署PHP应用程序,并且我知道如果不小心使用某些语言功能会导致安全问题。这些东西不仅仅是通过“知道”一种语言而知道的。作为程序员,我们需要投入大量的时间去学习我们所选择的这些语言之外的东西。这就是为什么当一些程序员说您选择的语言是“垃圾”时,我感到非常失望。我花了二十年磨练这方面的技能,现在有人来告诉我,我的选择是错误的?其实这并不是一个错误的选择,PHP给我带来了一份满意的工作。我之所以能住上好房子开好车,是因为我花了20年时间掌握PHP。扯远了,还要继续说PHP为什么不垃圾。许多讨厌PHP并认为应该淘汰的人会提出很多观点来证明PHP是错误的选择。这些年来我们听到的很多论点都是反对PHP灰飞烟灭的(我不知道为什么每个人仍然死守着PHP4,这到底是怎么回事?)。还有一些观点根本就是无稽之谈,甚至是错误的。这不是一场“我的编程语言比你的好”的较量,没有必要歇斯底里,我发自内心地认为每一种编程语言都有自己的使命。发明这些语言的人(也就是比我聪明很多的人)发明这些语言都是有原因的,编程语言也不是随便就能发明出来的。那么为什么选择PHP?答案很明确:因为它就在那里。我自学PHP,没有接受过多少正规培训,除了偶尔参加在线培训课程,也没有盖着“我可以教计算机做事”的名牌大学文凭。我来自设计背景,虽然我大约七岁时开始摆弄代码和计算机,但我对那个领域的教育没有同样的热情。我什至不知道为什么,我喜欢电脑和网络,但选择平面设计。这方面我不想多说,因为虽然我有这个学位,但在我今天的工作中作用不大。我相信和大多数PHP程序员一样,我开始使用PHP是因为我们希望网站做的不仅仅是显示一张图片和一段文字。当我学会了如何将数据从数据库中拉出来并展示在网络上时,我激动不已,太激动了!这正是我想要的,所以我直接跳了进去。然后,我遇到了WordPress。就像坐在电脑屏幕前、对PHP有一点基础知识的自以为是的人改变了这一切一样,WordPress改变了一切。WordPress的成功归功于像我这样的人,我们这些想要自己的博客但不知道如何自己构建博客的年轻人。您安装WordPress……然后添加一个插件,更改主题……然后您对主题进行一些小的更改,使其执行其他操作,或者看起来有点不同。然后你修改一个插件。然后你创建自己的主题。然后你在想,我还能做什么?于是我认识了PHP,不是我选择了PHP,是PHP选择了我。20年后,我仍在用PHP构建东西,很久以前就没有使用WordPress。我认为我是一个成熟的PHP程序员,我有能力写这篇文章。“PHP太简单了,应该学点有挑战性的”PHP如此流行的重要原因之一就是它无处不在,到处安装。甚至你的普通MacBook都预装了PHP,哎呀。从头开始编写PHP也非常容易,通常您不需要做任何特别的事情。创建一个index.php文件,在其中放入一行PHP代码,然后将其上传到几乎任何共享主机帐户:
