Maison  >  Questions et réponses  >  le corps du texte

Comment enregistrer un "avertissement obsolète" dans Yii2 sans l'afficher

<p>Afin de passer de PHP 8.0 à 8.1, j'ai rencontré de nombreux affichages PHP <em>Deprecated Warnings</em> Je pourrais simplement les désactiver, mais il serait préférable de les corriger pour PHP 8.2, j'essaie donc d'obtenir un enregistreur silencieux de ces avertissements lorsque mon application s'exécute sous PHP 8.1. Quels paramètres dois-je effectuer dans Yii 2 et PHP ? Est-ce possible? </p> <p>Lorsque je règle PHP sur <code>error_reporting( E_ALL );</code>, l'application Yii 2 affiche des erreurs. Ce n’est pas la voie « silencieuse ». </p> <p>Configuration Yii2 : Fichier<em>main.php</em></p> <pre class="brush:php;toolbar:false;">'targets' => [ 'class' => 'yiilogFileTarget', 'niveaux' => ['erreur', 'avertissement'], ],≪/pré> <p>Comment puis-je simplement enregistrer ces avertissements PHP sans arrêter l'exécution du code ? </p>
P粉328911308P粉328911308434 Il y a quelques jours543

répondre à tous(1)je répondrai

  • P粉546179835

    P粉5461798352023-09-06 00:08:27

    Essayez ceci :

    'log' => [
        'traceLevel' => YII_DEBUG ? 3 : 0,
        'targets' => [
            [
                'class' => 'yii\log\FileTarget',
                'categories' => ['yii\base\*'],
                'levels' => ['error', 'warning','deprecated'],
                'logFile' => '@runtime/logs/php_warnings.log',
            ],
    ],

    Désormais, les avertissements PHP seront enregistrés sans arrêter l'exécution du code. Cependant, afin d'obtenir une manière complètement « silencieuse » de consigner les avertissements PHP, vous devez ajuster les paramètres de rapport d'erreurs PHP.

    Ouvrez votre fichier de configuration PHP (php.ini).

    Recherchez la directive error_reporting et modifiez-la pour inclure E_WARNING. Par exemple :

    error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE | E_WARNING

    En incluant E_WARNING, vous vous assurez que les avertissements PHP sont enregistrés, mais pas les autres types d'erreurs.

    Enregistrez le fichier de configuration PHP et redémarrez votre serveur Web pour que les modifications prennent effet. Avec ces modifications, Yii2 enregistrera les avertissements PHP dans le fichier journal spécifié tout en permettant la poursuite de l'exécution du code. Vous pouvez afficher le fichier journal (php_warnings.log) pour collecter et gérer les avertissements PHP.

    répondre
    0
  • Annulerrépondre