Listen

Description

@sji_ch さんと PHP 8 について話しました。

PHP カンファレンス 2020

オンライン登壇
ライブ感

PHP 8 の印象
match 式

これまで PHP に無かった書き味
網羅性チェック
Ilija Tovilo さん作
静的解析
get_debug_type()

Constuructor property promotion

コードボリュームが減る
プロパティ宣言との混在

Named argument

仮引数の名前が API の一部になる
継承関係でも仮引数を揃える
needle / haystack
PhpStorm(JetBrains) の貢献がすごい

Attribute

仕組みが入った
静的解析に使うか
Psalm は doc comment 推奨
動作に影響を及ぼすところに使う

Union types

type alias が欲しい
レガシーコードへの適用
現場でどう使わるか

Nullsafe operator

便利は便利
真面目に書く時に使うか
コードレビューで通すか

Saner string to number comparisons

リリース時の反応
覚えるパターンが増えた
挙動が変わるので、PHP 8 対応時は要注意
in_array や sort なども影響

Jit compilation

なぜ JSON パーサが速くならなったか
プロファイルでボトルネックを見つける
CPU bound でも速くならないケース
ファミコンエミュレータ
$x === null or is_null($x)

Weap Map

わくわくするが、どこで使うか

今後の PHP

PHP 8 リリースまでの流れ
誰が今後の旗振り役をするのか
進化しつづける PHP