你知道吗?即将到来的 6月(2020.6),PHP已经诞生25年啦,作为一门饱受争议的编程语言,PHP 经历了什么,又准备如何解决历史遗留问题?
php 1.0 1995-06-08 -- 首次使用
虽然PHP已经25周岁,但并未显现老态,反而更为乐于拥抱外面的世界。
这一趋势在PHP 7.4版本表现的十分明显,明确支持外部语言接口(Foreign Language Interface,FFI)模式,对基于C语言的扩展包开放,允许更多外部扩展包参与到PHP的编程与维护工作中。
在PHP 7.4之前,开发者更习惯于“内置电池”的模式解决问题,好处是编写起来简单易懂,但代价是项目会随着开发者的更换和语言的进化逐渐变得难以维护,向其他语言开放有助于解决这一问题。
PHP 7.4每秒处理的请求数量是PHP 5.6的三倍,甚至比PHP 7.0快约18%。
此外值得一提的是预加载能力的提升,开发者可以使用opcache.preload配置指令,并指定PHP脚本的路径可以很容易地启用这一模式。
该脚本中引用的所有类和函数将被永久加载到内存中,并根据需要在每个服务器请求中进行引用。
此外,预加载模式下的每个请求的资源是可复用的,因此可降低请求时间。
当然,这也意味着如果要更改配置内容必须重启服务器。
更新维护
由于PHP的更新迭代,年代久远的包的维护和更新已经成为了大问题,HN的讨论热点就主要集中在PHP的维护上,而非新项目的开发。
出于可维护性的考虑,从PHP 7.4开始,官方不建议再使用PEAR,PHP推出自己的包管理器,官方称其为Composer,使用方式非常接近于Python的pip和Node的npm,极大减少了开发者的维护难度。
安全性
不出意外的话,PHP 7.X会陪伴我们很长时间,据消息,PHP 8.0的alpha版本会在6月份释出,现存的PHP的bug会在 8.X时代修复,主要更新会集中在安全上。
实际上,无论是否赞成PHP是世界上最好的语言,PHP的安全性问题对于开发者来说是一块心病,不过这个任何编程语言都有漏洞。
而在PHP 5.4时代官方移除safe_mode,更是劝退了大波开发者,在意识到问题后,PHP重新支持这一模式。
虽然有所反复,但总归是好事一桩。近期的PHP开始使用Argon2 password-hashing 算法,这是多年密码学哈希算法竞赛的冠军,也许是为表明对安全性的重视。
无论如何,php已经走过 25 个年头了,为世界多彩的WEB开发世界做出了独有的贡献,也已经被开发者证明了php是世界上最好的语言!希望PHP继续辉煌,不断的把惊喜带给开发者!
相关推荐
1. PHP视频教程