IT资讯 PHP 庆祝 25 周年,朝着 8.0 版本继续努力

tracy · 2020-06-14 20:30:06 · 热度: 7

2020 年 6 月 8 日,PHP 迎来了自己的 25 周岁生日。JetBrains 在博客中梳理了该语言自 1995 年诞生以来的种种历程,这种语言最初是用 C 语言编写的一组通用网关接口(Common Gateway Interfac,CGI)二进制文件,第一个 PHP 脚本套件被称为“个人主页工具”或“PHP 工具”。 

PHP 庆祝 25 周年,朝着 8.0 版本继续努力

 1998 年发布的 PHP 的第三次迭代是 Andi Gutman 和 Zeev Suraski 重写了 Lerdorf 编写的现有解释器的结果。JetBrains 解释称,此版本的 PHP 3.0 很像现在的 PHP 的第一个版本。 语言的名称改为递归缩写“PHP: Hypertext Preprocessor”。顶峰时,PHP 3 安装在互联网大约 10% 的 Web 服务器上。1999年,Zend 公司成立,直到今天,Zend 仍在继续为 PHP 做出贡献并积极参与其中。 

PHP 庆祝 25 周年,朝着 8.0 版本继续努力

最初没有 PHP 的正式规范,在着这种情况下该语言仍持续发展了 20 年的时间。直到 2014 年,PHP 规范出现。PHP 语言规范在 Facebook 内部开发,然后转移到了公共领域。

而与此同时,除了这个 25 周年纪念日外,PHP 8.0 也有望在今年发布。程序员 Brent Roose 透露了即将在 2020 年 11 月底发布的 PHP 8.0 中即将发布的功能。此版本的第一个 Alpha 版将于 6 月 18 日发布。同时,PHP 8.0 将引入多项重大更改,并引入一些新功能,例如 JIT 编译器、联合类型和属性。

PHP 庆祝 25 周年,朝着 8.0 版本继续努力

JIT 编译器

Roose 解释称,尽管还没有基准测试,但 JIT 编译器有可能改善 PHP 的性能。不像 C 或 Java 这样的编译语言,PHP 是一种解释性语言,这意味着它会在运行时转换为机器码。JIT 在运行时编译部分代码,以便可以使用代码的编译版本。并表示,将 JIT 编译器添加到 PHP 的原因是,它可能使其能够在 Web 开发上下文之外被视为一种高性能语言,并且可以随着时间的流逝而得到改进。但是,一个很大的缺点是维护起来很复杂。

联合类型

联合类型是两种或多种类型的集合,表示可以使用其中任何一种。而由于 PHP 是一种动态类型的语言,因此联合类型有很多用例。

属性

属性在其他语言中通常称为注解,它提供了一种向类添加元数据的方法,而无需解析文档块。

RFC 中的属性示例:

use App\Attributes\ExampleAttribute;

<<ExampleAttribute>>
class Foo
{
    <<ExampleAttribute>>
    public const FOO = 'foo';
 
    <<ExampleAttribute>>
    public $x;
 
    <<ExampleAttribute>>
    public function foo(<<ExampleAttribute>> $bar) { }
}
<<Attribute>>
class ExampleAttribute
{
    public $value;
 
    public function __construct($value)
    {
        $this->value = $value;
    }
}

有关功能和代码示例的完整列表可查看:https://stitcher.io/blog/new-in-php-8

相关推荐阅读:PHP 8 性能基准测试

猜你喜欢:
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册