TOPSoftware > PHP 8の正式版が登場、JITやunion型を実装

Software

PHP 8の正式版が登場、JITやunion型を実装

2020/12/02

 その他の主な新機能は次のとおり。

  • JITコンパイラ:2種類のJITコンパイルエンジン「Tracing JIT」「Function JIT」を装備した。Tracing JITのパフォーマンスは、合成ベンチマークでは約3倍、実行時間が長い一部のアプリケーションでは1.5~2倍となっている。一般的なアプリケーションのパフォーマンスはPHP 7.4と同程度とのこと。
  • アトリビュート:Javaのアノテーションや、C#やRustなどの属性と同じような機能。クラス、プロパティ、関数、メソッド、パラメータ、定数の宣言に、「<< ... >>」という書式でメタデータを体系的に記述できるようになった。
  • 名前付き引数:関数に引数を渡す時、所定の順番で値のみを渡す方法に加えて、パラメータ名を併記する渡し方ができるようになった。メリットとしては、引数の意味が自明になる点、引数を順不同で指定できる点、デフォルト値の指定を省略できる点などがある。
  • nullsafe演算子「?->」:メソッドチェーンにnullが含まれる場合への対応が簡潔になる。
  • WeakMapクラス:オブジェクトをキーとするマップを作成する時に、そのオブジェクトに対するガベージコレクションを可能にし、メモリリークを防ぐことができる。
  • コンストラクタでのプロパティの簡潔な定義:コンストラクタにプロパティの定義を統合した簡潔な記述ができるようになった。これまでは、単純なオブジェクトの場合でも、定型的なコードを大量に記述してプロパティを定義する必要があった。
  • match式:switch文と似た役割を持つが、セマンティクスがより安全で、また戻り値を返すこともできる。

 PHP 8.0は、5回のリリース候補版の提供をへて、11月26日に正式リリースとなった。前バージョンのPHP 7が登場したのは2015年12月だった。

(了)

翻訳:内山卓則=ニューズフロント
記事原文(英語)はこちら

↑ページ先頭へ