Yii2 で「非推奨の警告」を表示せずにログに記録する方法
P粉328911308
2023-09-05 16:40:49
<p>PHP 8.0 から 8.1 に切り替えるために、多数の PHP <em>非推奨の警告</em> が表示されました。単純にこれらをオフにすることもできますが、PHP 8.2 用に修正した方がよいため、アプリケーションが PHP 8.1 で実行されるときにこれらの警告を記録するサイレント ロガーを取得しようとしています。 Yii 2 と PHP ではどのような設定を行う必要がありますか?これは可能でしょうか? </p>
<p>PHP を <code>error_reporting( E_ALL );</code> に設定すると、Yii 2 アプリケーションはエラーを表示します。これは「沈黙」の方法ではありません。 </p>
<p>Yii2 設定: ファイル<em>main.php</em></p>
<pre class="brush:php;toolbar:false;">'targets' => [
[
'クラス' => 'yii\log\FileTarget',
'レベル' => ['エラー', '警告'],
]、</pre>
<p>コードの実行を停止せずに、これらの PHP 警告をログに記録するにはどうすればよいですか? </p>
###これを試して:### リーリー
これで、コードの実行を停止せずに PHP 警告がログに記録されるようになります。ただし、完全に「サイレント」な方法で PHP 警告をログに記録するには、PHP エラー報告の設定を調整する必要があります。
PHP 構成ファイル (php.ini) を開きます。
error_reporting ディレクティブを見つけて、E_WARNING を含むように変更します。例えば:### リーリー
E_WARNING を含めることで、PHP 警告はログに記録されますが、他の種類のエラーはログに記録されません。