写点什么

PHP 已死?

  • 2019-09-29
  • 本文字数:1935 字

    阅读完需:约 6 分钟

PHP已死?

本文最初发布 Daan 的 Medium 博客,经原作者 Daan 授权,InfoQ 中文站翻译并发布。


PHP 诞生已经 25 年了。从 1995 年开始到如今,它已经成为 Web 开发中最流行的服务端脚本语言之一。但似乎从 2001 年起,网上就有言论称“PHP 已死”。但是,PHP 真的已经死了吗?它还有未来吗?总之,一言以蔽之,PHP 在可见的未来,PHP 仍然有市场。



PHP 确实有过辉煌的时代,这一点毋庸置疑。但它真的死了吗?


在 StackOverflow 这样的论坛上,“PHP 已死”的言论甚嚣尘上。他们是否有正确的观点呢?或者他们只是不喜欢 PHP?


让我们来看看 PHP,看看这门编程语言是否还有未来。

PHP 仍然主宰 Web 开发

如果你只是简单地看一下数字,得出的结论肯定是:PHP 并没有死去。PHP 是迄今为止使用最多的服务器端脚本语言。互联网上大约 75% 的网页是由 PHP 开发的。


看看下面的图表,就使用频率而言,PHP 在竞争中领先了多少。基于这个统计数据,我们可以公平地得出这样的结论:PHP 并没有死亡,因为对于一门死亡的语言来说,75% 的数字是不是太高了?



来源:w3techs.com


之所以有那么多网站使用 PHP 的原因之一是因为 WordPress 使用了 PHP。WordPress 的市场份额约占所有网站的 34%。也就是说,有 7500 万家网站在使用 WordPress。


此外,还有一些其他 CMS,如 Drupal(3%),Joomla(2%),它们也占有相当大的市场份额。还有一些流行的商店管理系统,如 Shopify,占有市场份额的 1% 左右。


很多大型内容和商店管理系统都使用 PHP,这使得 PHP 变得更重要。

从零开始建设网站

我能理解关于从零开始建设网站的争论,因为有很多人,比如使用 WordPress 的那些人,并不知道如何编写代码。使用 WordPress 创建网站并不需要你知道如何编写代码。很多拥有 WordPress 网站的人们可能甚至都不知道它是用 PHP 开发的。那么,那些从零开始建设的网站还在用 PHP 吗?


PHP 过去曾经是,现在仍然也是一门非常流行的语言。原因之一是它是一门非常容易学习的编程语言。这使得它成为一门对建设网站新手很友好的优秀语言。


PHP 可以在没有任何先验知识的背景下进行学习。我认为可以公平地说,大多数 Web 开发人员可能都是从 PHP 开始的,或者至少在某个时候曾经使用过 PHP。

程序编制

自从 1994 年 PHP 问世以来,随着时间的推移,这门语言变得有点杂乱起来。有很多方法可以构建相同的功能,而且其中很多方法都相当变态。如此一来,人们就更容易写出糟糕的 PHP 代码。


显然,用任何语言编写糟糕的代码都是有可能的,但由于 PHP 的发展方式,用 PHP 写出糟糕的代码更容易些。


PHP 自问世以来,过了 25 年,它一样有着很多老旧的东西。这使得 PHP 上手很容易,但如果你要坚持使用陈旧的解决方案,那么你最终将得到的是不符合最佳实践的次优代码。这是你应该尽量避免的情况。


当你缺乏 PHP 经验时,可能会出现不遵循最佳实践的情况,因为你并不总是清楚什么是最佳解决方案。这是因为有很多方法可以解决同样的问题。这也是一些开发者讨厌 PHP 的原因之一。


另一方面,你也许会争辩说,大多数 Web 开发人员并不会去编写那种原始的 PHP 代码。大多数情况下,你将使用某种框架,这种框架能做很多事情。一种非常干净的流行 PHP 框架是 Laravel。使用框架的好处是,许多繁琐的工作都是在幕后完成的。使用这种框架,能迫使你编写更为干净的代码。

PHP 7

自 PHP 7 发布以来,已经引入了许多新的特性和改进。两个最重要的改进:速度更快,内存的利用更好。这意味着在网站加载速度方面,使用 PHP 7 要比旧版 PHP 更快,并且可以同时处理更多的用户请求。


在代码方面,PHP 7 引入了类型声明和新的运算符。错误处理也得到了改进。

工作

由于 75% 的网站是用 PHP 开发的,因此显然会有很多工作涉及到某种 PHP 编码。所有这些网站都需要维护,这就需要 PHP 开发人员。PHP 的巨大市场份额不会在一夜之间消失,所以涉及到 PHP 的工作在未来一段时间还会随处可见。


如果你查看 StackOverflow 的招聘页面, 你就会发现有很多职位需要 与 PHP 相关。

结论

关于 PHP 的未来,尽管有很多讨论,但是很明显,PHP 确实有未来。到目前为止,PHP 是网站上用得最多的编程语言。


PHP 已经存在一段时间了,这在代码中有所反映。有很多老旧的东西,这意味着最佳解决方案并不总是明晰的。在代码方面,你可以使用一个框架,它为你完成许多繁琐的工作,并迫使你编写更为干净清晰的代码。然而,自发布 PHP 7 以来,有很多方面都得到了改进。


如果你想以 PHP 开发人员的身份开始职业生涯,当你找到工作的时候,你不会走投无路。有很多工作都需要 PHP 技能,这一点在可见的未来将会保持不变。


那么,你对 PHP 是什么看法呢?你认为这门编程语言还有未来吗?还是它已经死亡了呢?


作者介绍:


Daan,来自荷兰,后端开发人员,也是一位密码学爱好者。


原文链接:


The Future of PHP


2019-09-29 15:113819
用户头像

发布了 375 篇内容, 共 191.4 次阅读, 收获喜欢 947 次。

关注

评论 2 条评论

发布
用户头像
PHP辉煌过。
2020-01-06 20:14
回复
用户头像
我想知道这个最佳实践哪里了解到?
2019-10-02 13:13
回复
没有更多了
发现更多内容

工作中常用的设计模式--适配器模式

lpe234

后端 设计模式 适配器模式 spring-boot

北京等保备案预约平台是哪个?多久能办好?

行云管家

等保 等保测评 等保备案 北京

干货 | 如何快速实现BitSail Connector?

字节跳动数据平台

开源 数据引擎 12 月 PK 榜

react的useState源码分析

flyzz177

React

APISIX 在君润人力云原生平台的架构实践

API7.ai 技术团队

Apache Kubernetes api 网关 APISIX 用户案例

WALLYS/dr6018 vs dr6018s/ipq6018/ipq6010/ipq6000/SFP/ OpenWRT 2x2 2.4G&5G industrial wifi6 moudle

wallysSK

IPQ6010 ipq6018 IPQ6000

MySQL遵循最左前缀匹配原则!面试官:回去等通知吧

架构师之道

MySQL java面试

天天预约 | 2022年11月产品更新

天天预约

小程序 SaaS 软件系统 产品分析 预约工具

鱼传科技:函数计算,只要用上就会觉得香

Serverless Devs

可观测性项目对 uprobe 的需求理解与实现

KINDLING

Linux 可观测性 ebpf uprobe

函数计算平稳助力鱼传科技应对访问量激增

Serverless Devs

看透react源码之感受react的进化

goClient1992

React

技术分享| anyRTC音视频与微信小程序互通实践

anyRTC开发者

小程序 音视频 WebRTC RTMP 视频格式转换

从react源码看hooks的原理

flyzz177

React

VoneBaaS荣获第二届中国可信区块链安全攻防大赛优秀案例奖

旺链科技

区块链 产业区块链 VoneBaaS 12 月 PK 榜

从输入URL到渲染的过程中到底发生了什么?

loveX001

JavaScript

关于K8s中资源服务质量管理Resource Qos的一些笔记

山河已无恙

12月月更

基于Lattice的干净架构实践

原力在线

中台 构架 lattice 高可扩展 干净的架构

Zebec联合Visa推出实体借记卡持续利好生态,生态通证$ZBC表现强劲

西柚子

React-Hooks源码深度解读

goClient1992

React

深度分析React源码中的合成事件

goClient1992

React

令人头秃的js隐式转换面试题,你能做对吗

loveX001

JavaScript

meta force佛萨奇2.0系统开发技术方案详解

开发微hkkf5566

百度前端二面常考面试题

loveX001

JavaScript

模块一作业

陈实

「架构实战营」

双机双工是什么意思?与双机热备有什么区别?

行云管家

双机热备 双机双工

EPSS 解读:与 CVSS 相比,孰美?

SEAL安全

12 月 PK 榜 CVSS EPSS 评分系统

从recat源码角度看setState流程

flyzz177

React

CleanMyMac X2023永久版下载教程及使用许可证

茶色酒

CleanMyMac X CleanMyMac X2023

AngularJS进阶(二十八)解决AngualrJS页面刷新导致异常显示问题

No Silver Bullet

页面刷新 AngularJS 12月月更

Node.js 基于区块链的游戏应用的首选

devpoint

JavaScript node.js 区块链 12月月更

PHP已死?_语言 & 开发_Daan_InfoQ精选文章