QCon北京开幕在即|与全球 140+ 顶尖工程师共同解构 AI 时代的技术浪潮 了解详情
写点什么

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:113850
用户头像

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

关注

评论 2 条评论

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

Toolbar在Android中的使用,2021大厂面试合集

android 程序员 移动开发

RadonDB MySQL on K8s 2.1.0 发布!

RadonDB

MySQL 数据库 Kubernetes

WMS-是如何拿到-Token-的?,flutter屏幕旋转监听

android 程序员 移动开发

可视化全埋点系列文章之元素标识篇

神策技术社区

可视化 全埋点

[译][2,安卓应用开发项目

android 程序员 移动开发

UI组件化--干掉shape终极一战,android模块化框架

android 程序员 移动开发

Python代码阅读(第50篇):对列表间隔取元素

Felix

Python 编程 Code Programing 阅读代码

WorkManager完全解析+重构轮询系统,大厂面试题汇总

android 程序员 移动开发

[译] Android 的 Java 9,10,11,作为程序员一定不要仅仅追求物质

android 程序员 移动开发

TT语音线程优化,Android开发快速学习

android 程序员 移动开发

ViewPage实现一屏多页面显示(进阶版),简直无敌

android 程序员 移动开发

zookeeper使用篇-Zookeeper Api实践,flutter下拉刷新上拉加载更多

android 程序员 移动开发

[译] Android 的多摄像头支持,flutter登录

android 程序员 移动开发

WebView开源库终极学习方案,android开发艺术探索pdf

android 程序员 移动开发

Xposed简介以及小米去桌面广告的简单实现,五步搞定Android开发环境部署

android 程序员 移动开发

[Android-Gradle]-搞定Groovy闭包这一篇就够了,小程序开发步骤

android 程序员 移动开发

会议管理系统减少大中型企业的会议矛盾

低代码小观

企业管理 企业应用 管理系统 管理工具 会议管理

Aeron中这么多空闲策略选哪个?

BUG侦探

Aeron 开发技能

Windows安装repo的真正解决方案,移动终端软件开发颜色演示

android 程序员 移动开发

WMRouter:美团外卖Android开源路由框架(1),看完老板哭着让我留下来

android 程序员 移动开发

[译] 改善 Android Studio 的构建速度(1),美团移动端开发工程师

android 程序员 移动开发

[译][2(1),android开发计算器源码

android 程序员 移动开发

STM32~配置时钟频率[一文带你解决STM32主频配置],flutter跳转到系统设置

android 程序员 移动开发

View 事件分发机制,看这一篇就够了,flutter登录注册

android 程序员 移动开发

ViewPager2重大更新,支持offscreenPageLimit,kotlin动态语言

android 程序员 移动开发

网盘数据要搬家?焱融 SaaS 数据服务平台教你这么干

焱融科技

云计算 分布式 高性能 文件存储 SaaS平台

[译] Plaid 应用迁移到 AndroidX 的实践经历,安卓卡顿优化方法

android 程序员 移动开发

[译] 充分利用多摄像头 API,30分钟轻松入门flutter

android 程序员 移动开发

[译] 全新 Android 注入器 _ Dagger 2(三),android开发架构方案

android 程序员 移动开发

[译] 改善 Android Studio 的构建速度,掌握这6大技能体系

android 程序员 移动开发

6.0反序列化漏洞分析

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

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