La méthode spécifique est la suivante :
Configurez d'abord la méthode d'erreur et modifiez le paramètre errorHandler
(Recommandations associées : yii framework)
Sous config/web, la méthode par défaut est la méthode d'erreur
'errorHandler' => [ 'errorAction' => 'site/error', ]
sous le contrôleur de site. Remplacez-la par :
'errorHandler' => [ 'errorAction' => 'error/error', ]
. J'ai l'habitude de recréer une erreur. La méthode dépend des habitudes personnelles.
Créez actionError dans le contrôleur d'erreurs, comme suit :
public function actionError(){ $error = \Yii::$app->errorHandler->exception; $error_msg = ''; if($error){ $filed = $error->getFile(); //获取错误文件 $line = $error->getLine(); //获取错误行数 $message = $error->getMessage(); //获取错误消息 $code = $error->getCode(); //获取错误码 $log = new FileTarget(); $log->logFile = \Yii::$app->getRuntimePath() . "/log/error.log"; //生成文件到log目录下 $error_msg = $message ." [file:{$filed}][line:{$line}][message:{$message}][code:{$code}][url:{$_SERVER['REQUEST_URI']}][POST_DATA:".http_build_query($_POST)."]"; $log->messages[] = [ $error_msg, 1, 'applicition', microtime( true ) ]; $log->export(); } return $error_msg; }
Le journal des erreurs sera généré dans le répertoire runtime/log.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!