Maison > Article > développement back-end > Introduction à l'utilisation de la fonction php error_log()
La fonction
error_log() envoie un message d'erreur au journal des erreurs du serveur, à un fichier ou à une cible distante. Sa syntaxe
error_log(message,type,destination,headers);
Paramètres | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
message | Obligatoire. Spécifie le message d'erreur à enregistrer. | ||||||||||
type |
|
||||||||||
destination | Facultatif. Spécifie la destination du message d'erreur. La valeur est déterminée par la valeur du paramètre type. | ||||||||||
en-têtes |
Facultatif. Spécifie des en-têtes supplémentaires tels que From, Cc et Bcc. Ce type de message utilise la même fonction intégrée de mail().function getNewsContent($news_id, $field="") { global $db; $result = $db->getRow("SELECT $field FROM news WHERE news_id = '$news_id'"); if (logError($result)) { return false; } return $result; } Utilisé uniquement lorsque message_type est défini sur 1. |
En fait, pour nous, par souci de simplicité, il est généralement plus approprié d'utiliser le type 3 directement pour les logs. fichier à l’emplacement dont vous avez besoin dans le fichier.
Pour illustrer l’utilisation simple de la fonction error_log(), prenons un exemple. Supposons que notre classe abstraite
Cette fonction peut enregistrer l'endroit où le mauvais SQL est trouvé, puis enregistrer automatiquement l'heure, la page actuelle et les informations d'instruction SQL erronées dans le /tmp/php_sql_err.log
Ensuite, lorsque nous déboguons le programme, nous constatons que l'extraction des données est incorrecte ou qu'il n'y a pas d'extraction de données, nous pouvons alors afficher le fichier /tmp/php_sql_err.log pour afficher notre page d'erreur et notre instruction SQL erronée.
Bien sûr, nous devons utiliser cette fonction dans le programme où nous exécutons des requêtes SQL. Par exemple, si nous écrivons une fonction pour extraire des informations d'actualité :
Dans celle-ci, nous déterminons si. l'erreur SQL, s'il y a une erreur, renvoie false, puis nous pouvons vérifier le journal pour voir si notre fonction s'exécute comme prévu.
Nous exécutons : tail /tmp/php_sql_err.logVous pouvez voir des informations similaires à celles-ci :
<code> $address = post('address'); $group_add = explode(',',$address); $url ="/usr/local/apache/eyoung/tmp/maillog_".date("Y-m-d").".log"; foreach($group_add as $value) { /** {{{ modify by muzhaoyang -2006.12.13- 记log * 已空格分隔数据,记录的数据为写文本时间 拉票人ID 选手ID 发信地址 */ $logstr=date("H:i:s")." ".$uid." ".$star_uid." ".$value."\n"; error_log($logstr,3,$url); //}}} } </code>[2006-01-12 11:44:34] -[/news_list . php?news_id=1] :SELECT FROM news WHERE news_id = '1' [nativecode=1064 ** Vous avez une erreur dans votre syntaxe SQL ; vérifiez le manuel qui correspond à la version de votre serveur MySQL pour
pour la bonne syntaxe pour utiliser près de 'FROM news WHERE news_id = '1']
C'est probablement parce que lorsque nous avons sélectionné, nous n'avons pas écrit les noms de champs qui doivent être extraits, alors nous pouvons vérifier le news_list.php fichier, la méthode de fonction getNewsContent () ne lui transmet pas le paramètre $field, ce qui entraîne une erreur d'exécution SQL. Par conséquent, la fonction error_log() permet de vérifier si notre SQL est écrit correctement ou si les paramètres ne sont pas transmis correctement. Cela réduit considérablement la charge de développement et nous permet d'effectuer des
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!