PHP7.4からPHP8.1までの新機能をキャッチアップ

概要

PHPの知識が7.3から止まっているので8.1までの新機能を駆け足でキャッチアップする。

PHP 7.3.x - PHP 7.4.x

新機能

型付きプロパティ

アロー関数

Null合体代入演算子

配列内でのアンパック

FFI(Foreign Function Interface)

PHPから別言語を呼び出せる。 Goのcgoみたいなやつ。

preload

opcacheにスクリプトを事前ロードする機能が追加された。

PHP 7.4.x - PHP 8.0.x

新機能

名前付き引数

アトリビュート

アノテーションの新機能。

union型

引数、戻り地、プロパティに対してunion型を宣言できるようになった。

match式

nullsafe演算子

null安全なコードが書きやすくなる。

PHP 8.0.x - PHP 8.1.x

新機能

文字列をキーとして持つ配列のアンパック

列挙型

Fibers

完全なスタックを持つ、停止可能な関数。コールスタックのどこからでも停止・再開が可能。 非同期処理が書ける。

交差型

unionが型のORなら、交差型は型のAND。

never型

戻り値にのみ指定できる型。関数がexit()するか例外を投げるか終了しないかを示す。 voidとは違う。

所感

どんどん型を意識したコードが書きやすくなってきている印象。 下位互換性は流し読みしかしていないのでアプデ対応のときでも再度読み直したい。

参考