时间:2022-10-09 14:38:11 | 浏览:9105
晓查 乾明 发自 凹非寺
量子位 报道 | 公众号 QbitAI
当下,如果你打开搜索引擎,搜索关键词“PHP过时”,能找到714万个相关结果。
这些结果之中,不乏有2016年、2018年的结果,说PHP已经过时了。
现已2019年,这个曾经自称为“世界上最好的语言”PHP,情况如何?
一位名叫Brent的程序员小哥,写了一篇博客文章,介绍了PHP在2019年的情况。
他说,现在的PHP每年都会积极开发新版本,从2004年发布PHP 5以来性能已经提升了两到三倍。
而且,有很活跃的生态系统,里面有各种各样的框架、包和平台。过去几年,PHP也添了很多新功能,语言不断发展等等。
他希望,大家都放弃偏见,重新认识下现在的PHP。
博客文章被po到HackerNews上之后,半天就有700多热度,引起近400条讨论。
有人表示,自己还是不喜欢PHP的代码和架构,因为代码很难看,还是围绕着静态方法构建的,不容易阅读。
也有人给点了赞,说从生态系统、性能、语言本身上来看,PHP这几年的发展的确不错。
那么,PHP现在到底怎样呢?来一起看看。
现在,PHP已经更新到了7.3版本,2019年底将会跟新7.4版本,之后会升级到8.0版本。
小哥表示,PHP5.0版本在2004年发布的时候,它的性能就已经达到了平均水平。在升级到7.0版本的时候,又从头开始重写了一遍核心部分,运行WordPress 5.0时,性能提升了两到三倍。
在Web应用程序中,PHP与其他语言也有可比性,在某些情况下性能表现还更好。
虽然与C和Rust相比,PHP还是略逊一筹,但比Rails或Django要好得多,性能也比得上ExpressJS。
在HackerNews的讨论中,很多人都提到,因为WordPress的存在才让PHP有了些存在感。
但小哥在博客中说,WordPress绝不能代表PHP当前的生态系统。
一般来说,PHP中有两个主要的Web应用程序框架,分别是Symfony和Laravel。现在使用PHP做开发,基本上都会选择其中的一个。
这两个框架背后,都有一个庞大的包和产品生态系统,从管理面板和CRM到独立软件包,分析工具,支付集成等等。
虽然这些框架适用于实际开发,但如果只需要进行内容管理,WordPress和CraftCMS是更好的选择,而且它们也会进一步改进。
此外,衡量PHP生态系统当前状态的一种方法是看Packagist中的情况,这是PHP的主要软件包的存储库。
PHP主要软件包近年来已呈指数级增长,每天下载量达到2500万次。这足以证明,PHP生态系统已经远非昔日可比。
除了应用程序框架和CMS之外,过去几年PHP中的异步框架也开始兴起,比如Swoole、Amp和ReactPHP等等,都是用PHP或其他语言编写的框架和服务器,能够让用户运行真正的异步PHP。
现在, PHP已经进入了异步世界,像WebSocket和具有大量输入输出的应用程序之类的东西,已经开始与PHP世界相关了。
尽管async和await现在还不可用,但在过去的几年里,PHP语言本身已经做了很多改进。下面是一个不完全的PHP新特性列表:
短闭包
Null合并运算符
Traits代码复用机制
类型化属性
展开运算符
JIT编译器
外部函数接口
匿名类
返回类型声明
现代加密库
生成器
更多
当谈到PHP语言特性的时候,让我们也来看看今天PHP语言是如何发展的。PHP有一个活跃的志愿者核心团队推动语言的发展,向社区征求意见(RFC,Request for Comments)。
接下来,这些RFC在“内部”邮件列表中讨论,也可以在线浏览。在添加新的功能之前,必须进行投票。只有至少占2/3多数的RFC才被允许进入核心。
大约有100人允许参与投票。核心团队的成员当然有权投票,因为他们必须维护代码基础。
除此之外,还有一群人是从PHP社区中单独挑选出来的。这些人包括PHP文档的维护者,整个PHP项目的贡献者,以及PHP社区中杰出的开发人员。
虽然大部分核心开发是在自愿的基础上完成的,但是核心PHP开发人员之一Nikita Popov最近加入了软件公司JetBrains,全职从事编程语言工作。
另一个例子是最近决定投资Zend框架的Linux基金会。像这样的雇佣方式和收购确保了PHP未来发展的稳定性。
过去几年里,围绕PHP本身的工具已经有所增加,比如由Vimeo开发的静态分析工具Psalm等等。
这些工具能够对你的PHP代码进行静态分析,并报告其中出现的错误以及可能会出现的错误。
尽管PHP还没有被编译,不允许使用自定义语法,但在某种程度上,它们提供的功能能够媲美TypeScript。
这意味着,现在的PHP开发者要依赖文档块。但PHP的原始创建者Rasmus Lerdorf,已经明确提到了要在内核中添加静态分析引擎。这一想法的潜力很大,但任务同样艰巨。
在传输方面,受到JavaScript社区的启发,PHP开发者社区已经在努力的拓展PHP语法。比如一个名为Pre的项目,可以把新的PHP语法转换成普通的PHP代码。
这个想法虽然已经在JavaScript世界中得到了证明,但是只有在提供了适当的集成开发环境和静态分析支持的情况下,它才能在PHP中发挥作用。
尽管这是一个非常有趣的想法,但是在能够称之为“主流”之前,它还有很长的路要走。
再次把话题回到开头提出的问题上,PHP已经过时了吗?
除了上面的一些动态,还有一份报告可以参考。
去年10月,GitHub发布2018年的年度报告。在热门编程语言中,PHP排名第四。
虽然比不上JavaScript、Java,后来又被Python超过,但依旧比C++、C#等语言热度要高。
— 完 —
诚挚招聘
量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。
量子位 QbitAI · 头条号签约作者
վ"ᴗ" ի 追踪AI技术和产品新动态
Thinkphp:=> 简介:是由上海顶想公司开发的一款,PHP写成的,开源的MVC框架;官网:http://www.thinkphp.cn下载:https://github.com/top-think/framework 环境要求:
本文主要简析两个国产的PHP框架ThinkPHP与SpeedPHP。通过学习发现,它俩在很多方面有着相似但又不同的地方:1.单一入口,二者都是单一入口文件。每个app都需要一个入口文件,且只能有一个入口文件。ThinkPHP生而就有多app
PHP框架是什么?PHP框架提供了一个用以构建web应用的基本框架,从而简化了用PHP编写web应用程序的流程。这样不但节省开发时间,有助于建立更稳定的应用,而且减少了重复编码的开发。框架还可以帮助初学者建立更稳定的应用服务,这可以让你花更
截至目前(2014.2), PHP 的最新稳定版本是 PHP5.5, 但有差不多一半的用户仍在使用已经不在维护的 PHP5.2, 其余的一半用户在使用 PHP5.3。因为 PHP 那“集百家之长”的蛋疼语法,加上社区氛围不好,很多人对新版本
在中国互联网行业膨胀的12-16年,PHP语言凭借自身易上手,开发周期短的优势,深受各中小企业的喜爱。小编也很荣幸在2009年底进入这一行业,为自己谋生分得一杯羹。但是PHP又先天有它的局限性,导致客户很多需求无法得到满足。大家都知道,P
ZWebPHP 框架设计目的:标准化、体验统一、简单可靠、易于扩展后端PHP框架基于PHP、smarty 构建。基于composer自动加载。完全基于API接口设计,API文档自动生成。权限包含菜单访问权限和API接口访问权限。工具类、数据
这也许,不,就是PHP世界中最好的日志组件—— Monolog所有的 PHPer,请站在巨人的肩膀上。随着 Composer 的普及,PHP 组件化开发思想越来越深入人心,我们没有必要重新自己打造轮子,只要确定需求和目标,设计好软件的架构,
PHP的功能越来越强大,里面有着非常丰富的内置函数。资深的PHP程序员对它们可能都很熟悉,但很多的PHP学习者,仍然对一些非常有用的函数不太熟悉。这篇文章里,我们就列举10个你或许不了解但实用的PHP函数,供大家参考和学习。1. php_c
Workerman是一款纯PHP开发的开源高性能的PHP socket 服务器框架。被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。 支持TCP长连接,支持W
框架是帮助初学者创建稳定的程序。使得你可以花更多的时间去创造真正的Web程序,而不是编写重复性的代码。框架第一阶段什么是框架?一直以来php框架被广泛利用,多半都是基本mvc架构模式的,国内外框架有HDPHP框架、ThinkPHP、CI框架
怎样搭建自己一个PHP框架?PHP写了5年,不想用其他框架,想自己搭建一套mvc oop的框架 可以用别人一些类库,但核心orm 之类希望自己写。这是最近遇到了别人的一个问题,5年时间的PHP资深程序是可以独立开发出自己框架。小编今天带来H
PHP的框架很多,有phalcon,kohana ,laravel,Yii,thinkPHP,ROR,HD,,CI,和ROR等,我觉得PHP框架其实本身就是一个工具而已,没有好与不好,只有合不合适。任何东西都没有最好,只是不同的取舍。有人说
ThinkPHP框架人们习惯性又叫它TP框架,是一个轻量级的国产PHP开发框架,快速、兼容而且简单, ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、
PHP框架的发展背景毫无疑问,Web框架技术在近几年已经得到了突飞猛进的发展和普及,在过去几年里,框架技术的普遍经历了比较大的完善过程,很大一部分可以归因于RubyonRails,以及在其他编程语言中流露出的MVC框架思想。如果你是一个PH
PHP是主要用于Web开发的服务器端的脚本语言,也用作通用编程语言。Web框架(WF)或Web应用程序框架(WAF)是一个软件框架,来支持Web应用程序的开发,包括Web服务,Web资源和Web API。Web框架能够自动化Web开发中执行