set_error_handler関数でエラー発生時に発生したエラーの種類を確認して、未定義変数、未定義配列キー関係のエラーであれば無視、それ以外は通常の処理をするように変更する。
こんな対応をしちゃって本当に良いのか?という気はするが……。
// 特定種類のWarningは無視する設定
set_error_handler(function($errno, $errstr, $errfile, $errline){
// Warning無視
if (str_starts_with($errstr, "Undefined variable" ) == true) { return true; } // 未定義の変数を参照
if (str_starts_with($errstr, "Undefined array key" ) == true) { return true; } // 未定義の配列キーを参照
if (str_starts_with($errstr, "Trying to access array offset on value of type null") == true) { return true; } // 未定義の変数を、配列であるかのようにアクセスしようとした
// その他は通常のエラーハンドラが処理を引き継ぎぐ
return false;
}, E_WARNING);