仕事でPHPをメインに開発を行っていますが
PHPのバージョンがあがったことによる対応を行うことが増えていました。
特に
「Deprecated: Passing null to parameter #2 ($needle) of type string」の発生が多くあります。
これは、関数に渡す引数でnullが入ってくる可能性がある記載は非推奨ですよとのことです。
例えば、次の処理がある場合
strstr($hoge, 'hoge');
次のようにnullとなる可能性を除去しなければいけません。
strstr($hoge ?? '', 'hoge');
公式に理由が記載されています。
> ビルトイン関数のスカラー型の引数は、 デフォルトで nullable ですが、 この振る舞いは推奨されなくなりました。 ユーザ定義の関数においては、 スカラー型の引数は nullable と明示的にマークする必要があり、 その振る舞いと合わせるためです。
引用:ビルトイン関数の nullable でない引数に null を渡した場合
修正自体は簡単ですが、数が多いと大変ですね。
ではでは。