ゆるふわ言語としてお馴染みのPHPを利用中の皆さん!
我々には、エラー制御演算子@
というものがあります。
──コイツの挙動について、深く考えてみた事はありますか?
例えば、次のコードを実行すると、何個のエラーが出力されるでしょうか。
<?php
var_dump(@$v1->p);
@var_dump($v2->p);
var_dump($v3->p);
@min($v4);
min(@$v5);
min($v6);
$ar1[] = $v7;
@$ar2[] = $v8;
$ar3[] = @$v9;
正解はPHP8で3個、PHP7で6個です!
@を付けた場合の制御の対象はどこまでなのか、制御された場合にどういう挙動の変化があるのか?
PHP8での変更はどんなものなのか?
このトークでは、php-srcとASTの世界から「@完全に理解した」を目指します。