PHP是当今万维网的中流砥柱。目前全球超过四分之三的网站由PHP驱动。在服务器端编程语言中,PHP(超文本预处理器)几乎没有竞争对手。
然而,开发者社区中对PHP的反对声浪不小。根据Stack Overflow的调查,PHP是最受讨厌的主流编程语言之一,仅次于C、Perl、汇编和VBA等语言——这可能是因为与Python等更现代的语言相比,PHP被认为笨拙且过时。甚至C++、Java和Ruby的表现都比PHP更好。PHP也经常成为社区中的笑柄。
那么,为什么PHP尽管拥有强大的用户基础,却在多年来逐渐失去人气?
我们知道它是当今网络的中流砥柱。但它明天还会如此吗?面对新旧技术的冲击,PHP仍在坚守阵地。让我们在回答这些问题的同时,探讨使用PHP构建网站的挑战、优缺点。
网络现实与PHP交织
即使所有开发者和网站管理员今天决定停止使用PHP,他们也做不到,因为互联网上最常见和最流行的内容管理系统(CMS)WordPress就是用PHP编写的。根据W3Techs的数据,目前有高达43%的网站运行WordPress——而且这个数字预计还会增长。
但如果你认为PHP主要用于CMS的基础,那也情有可原。如此根深蒂固且拥有庞大社区的技术不可能仅仅依赖一个应用生存或消亡。根据Zend PHP Landscape报告,全球超过600个开发团队目前使用PHP的用途如下:
PHP的问题出在哪里?
PHP最初并不是为了成为广泛使用的编程语言而设计的。1995年创建PHP的Rasmus Lerdorf以抨击自己的创造和编程技巧而闻名。据报道,他曾说:“我真的不喜欢编程。我创建PHP是为了减少编程,这样我就可以重复使用代码。”
在SitePoint的采访中,他进一步贬低PHP:“PHP就像你的牙刷一样无聊。谁会想读关于牙刷的东西呢?”
鉴于PHP语法的不直观、平庸和不一致,以及其糟糕的设计原则,许多开发者在原则上同意Lerdorf的观点。尽管PHP已经有27年的历史,但它只发布了八个主要版本。核心的更新和增量更新的速度极其缓慢且不稳定。
说到不直观和平庸,还有替代语言和可比语言的问题。
最接近的竞争对手——就感知和可见的受欢迎程度而言——是Python,开发者因其简单性和灵活性而喜爱它。Python和PHP一样是服务器端语言,但其设计使得开发者需要编写的代码少得多。尽管目前只有一小部分网站运行在Python上,但它已成为人工智能和机器学习编程以及任何与大数据相关的领域的首选。
然后是JavaScript。虽然它是一种客户端脚本语言(因此与PHP的对比不太恰当),但Node.js和其他JavaScript框架的兴起促进了服务器端脚本和全栈开发,而PHP则不行。JavaScript驱动了像Google Drive这样的单页应用,其中页面通过API调用的数据以闪电速度重新渲染,消除了浏览器刷新。这用PHP很难复制——需要编写大量绕弯的代码才能实现用JS可以简单完成的功能。
那么,是什么让PHP依然活跃?
PHP的优势在哪里?
PHP有许多优点,尤其是它所驱动的网站数量。
经过验证的代码
PHP不可否认的优势是,在过去27年中,几乎所有能想象的功能都已经被编写、发布和使用过。几乎没有什么是基于PHP的网站做不到的。开发者可以放心,任何出现的问题都已经被(或最终会被)面对和解决。
庞大的社区
虽然最新一代的开发者开始讨厌它,但资深开发者已经在PHP上建立了整个职业生涯。他们提供了大量的技巧、教程和常见问题解答,几乎回答了即使是经验丰富的开发者可能遇到的任何问题。
这对企业和组织也是好事——如果你想构建一个网站或网络应用,你有大量技术娴熟且知识渊博的开发者可供选择。
可扩展性
鉴于其悠久的历史和专家开发者社区,PHP多年来积累了大量的功能库、插件、框架等。几乎没有什么需要从头开始编码。像Laravel、CodeIgniter和Yii这样的PHP框架在现成的通用功能基础上加速和标准化了开发。
此外,还有大量网站提供现成的PHP脚本,用于特定领域的功能,如电子商务购物车、列表、投票、日历预订等,这些可以加速应用开发生命周期而不牺牲性能。
数据库连接性
PHP相对于Python等竞争语言的最大优势是其数据库连接性。PHP几乎可以安全且轻松地连接任何类型的数据库,让开发者可以从当今可用的各种数据库程序中选择。它还通过专注于应用和服务开发而不是数据库集成来提高开发者的生产力。
多功能性
PHP在各个方面都是免费和开源的,不像其他编程语言、应用和操作系统。这意味着PHP有大量开发者不断提供支持、实现前沿功能、修复漏洞和添加新组件。
PHP以“LAMP”堆栈(Linux、Apache、MySQL、PHP)的形式预装在Web服务器上。然而,它是平台独立的——你可以在Windows、Mac OS或Linux上运行它。此外,它支持你可能听说过的所有浏览器。
结论
为了回答标题中的问题,本文是由一个基于PHP构建的网站呈现给你的。如果你问我,这已经让结论非常明确了!
是的,PHP正在失去人气——在Stack Overflow最新的开发者调查中,它在最流行的编程、脚本和标记语言中排名第10。PHP开发者的薪资也是同行中第二低的。
然而,PHP是年复一年出现在调查中的语言。这就是它的力量所在。新手开发者可以放心地打赌,PHP将在10年后仍然存在——而且Stack Overflow仍会将其纳入调查。
在过去二十年中,开发者从未停止用PHP构建网站,同时不断改进其开源代码库。PHP经受住了时间的考验——并在互联网核心的20年统治期间比许多网络技术更持久。如果你问我,它短期内不会消失。