世界上最好的语言--PHP,也在改变!

2012年的PHP是web开发的强者,我记得当年的PHP微信开发简直是火到不行,经过这几年的不断发展,PHP实际更偏向后端了。
开发者Brent最近发布一篇文章,详细地介绍了2019年PHP详细状况。
首先,他承认目前PHP存在一些问题,但以他的开发经验,仍坚定的认为PHP是web开发的绝佳选择,使用PHP,可以创建可靠、可维护和高质量的应用,并且最终结果可以让开发者及客户均满意。
同时他也通过五个方向表明“PHP不在是以前的模样”。
1、PHP正在积极开发,每年都会发布新版本
目前PHP版本为7.3,7.4预计将在今年年底发布。

PHP版本历程
由发展历程是可以看出PHP核心团队希望每年发布一个新版本的,并且在过去的四年中,他们成功维护了这么一个发布周期,为了激励PHP开发人员尽可能保持更新,每个新版本都会得到官方两年时间的大力支持,之后一年仅提供安全修复。
2、PHP5之后性能在不断提高
PHP7.0中,PHP核心部分完全重写,并带来了最新的Zend引擎,从而使PHP性能提升了2-3倍。
Brent拿出了一些测试指明自7.0以来,PHP web应用与其他语言的Web框架相比在一些情况下性能好很多。
3、有非常活跃的框架、包和平台组成的语言生态
“PHP 框架再也不仅仅只有 WordPress 了”。当前 PHP 中有两个主要的 Web 应用开发框架:Symfony 与 Laravel,还有 Zend、Yii、CakePHP与 Code Igniter 等,此外还有不少较小的框架。
此外,近几年 PHP 异步框架也兴起了,Swoole、Amp 与 ReactPHP 是其中的佼佼者,它们是用 PHP 或其它语言编写的框架和服务器,用来运行真正的异步 PHP。作者认为衡量 PHP 生态当前状况的一种方法是查看 Packagist 这个 PHP 主要软件包存储库的数据。通过以下趋势图,可以发现软件包数量呈指数增长,并且当前录入软件包有 223 217 个,总的安装量达到了 14 827 204 847,PHP 生态已不再像以前那么弱小。

各种版本的可用软件包数量

每月被安装数
4、PHP在不断发展,过去几年中添加了许多新功能
· Short closures
短闭包,也称为箭头函数,这是一种在 PHP 中编写较短函数的方法。
· Null coalescing operator
空合并运算符,它类似于三元运算符,但左边的操作数行为类似于 isset,而不是仅使用其布尔值。这使得此运算符对数组特别有用。它同时可在未设置变量时分配默认值。
· Traits
Trait 是一种重用代码的机制,它可以减少单继承的某些限制。Trait 类似于类,但仅用于以细粒度和一致的方式对函数进行分组,它是对传统继承的补充,可以实现行为的横向组合,类成员应用不需要继承。
· JIT compiler
JIT 是一种编译器策略,它将代码表述为一种中间状态,在运行时将其转换为依赖于体系结构的机器码,并即时执行。
· FFI
Foreign Function Interface,外部函数接口,它允许从纯脚本语言调用 C 函数、使用 C 数据类型,从而更有效地开发“系统代码”。对于 PHP,FFI 开辟了一种使用纯 PHP 编写 PHP 扩展和绑定到 C 库的方法。
以及Typed properties(属性类型化,类变量可以定义类型)、Spread operator(扩展运算符,这是一种新语法,可以直接在调用中解压缩参数)Anonymous classes(匿名类,用于创建简单的一次性对象)、Return type declarations、Contemporary cryptography、Generators(生成器,提供了一种简单、无样板实现迭代器的方法)。
5、各种开发工具在过去几年中已经成熟,并且保持增长
受到 JavaScript 社区的启发,目前 PHP 也有在进行转换的相关研发,比如项目 Pre,它允许新的 PHP 语法转换为普通的 PHP 代码。虽然这个想法已经在 JavaScript 中被证明可行,但作者认为在 PHP 中,只有先提供了适当的 IDE 和静态分析支持,它才有可能实现。
PHP已经不是十年前的PHP,
你还是十年前的自己吗?
确定不要再学习它吗?
· 附:PHP程序员发展路线图

你准备好,学习PHP了吗?

