Maison >développement back-end >Problème PHP >Avez-vous déjà utilisé l'opérateur @ en php ?

Avez-vous déjà utilisé l'opérateur @ en php ?

醉折花枝作酒筹
醉折花枝作酒筹original
2021-08-06 17:22:392230parcourir

Aujourd'hui, nous présentons un opérateur, qui peut être légèrement différent des opérateurs précédents, mais cet opérateur est très utile. Vous pouvez vous y référer si vous en avez besoin.

Nous présentons l'opérateur de contrôle d'erreur. Avant de présenter l'utilisation de cet opérateur, jetons un coup d'œil à cet opérateur.

Opérateur de contrôle d'erreur, langage informatique, PHP supporte un opérateur @. Lorsqu'il est placé avant une expression php, tout message d'erreur que cette expression peut produire est ignoré. @。当将其放置在一个 php 表达式之前,该表达式可能产生的任何错误信息都被忽略掉 。

如果激活了track_errors特性,表达式所产生的任何错误信息都被存放在变量 $php_errormsg 中。此变量在每次出错时都会被覆盖,所以如果想用它的话就要尽早检查。

我们已经知道了什么叫做错误控制运算符,那么来看一下如何使用这个运算符吧,我们先来看一个小例子。

<?php
$my_file = @file(&#39;grand.php&#39;) or die(&#39;文件格式发生错误!&#39;);
$value = @ $cache[$key];
?>

这个小例子的结果是什么?大家可以猜测一下。好了,我们这就来公布结果。

Avez-vous déjà utilisé lopérateur @ en php ?

应该有很多人都猜对了吧,太棒了,给自己鼓鼓掌。这个例子输出的结果好像是die后面的内容哦,那这个运算符是干什么的呢?如何使用呢?

我们来看看这个运算运算符的用法吧。

<?php
$my_file = @file (&#39;不存在的文件名称&#39;) or
    die ("打开文件失败:错误为&#39;" . error_get_last()[&#39;message&#39;] . "&#39;");
    //适用于任何表达式,而不仅仅是函数:
    
$value = @$cache[$key];
//如果索引$key不存在,则不会发出通知。
?>

这就是这个运算符的用法了,不过我们来看一些注意事项或是其他的吧。

对于新手来说,一个简单的规则是:如果你能从某处获得一个值,你可以在其中添加@运算符。例如,可以将其放在变量、函数和include调用、常量等之前。它不能放在函数或类的定义之前,也不能用于ifforeach

Si la fonctionnalité track_errors est activée, tous les messages d'erreur générés par l'expression sont stockés dans la variable $php_errormsg. Cette variable est écrasée à chaque erreur, alors vérifiez-la le plus tôt possible si vous souhaitez l'utiliser.

Nous savons déjà ce qu'est l'opérateur de contrôle d'erreur, alors voyons comment utiliser cet opérateur. Regardons d'abord un petit exemple.

rrreee

Quel est le résultat de ce petit exemple ? Vous pouvez deviner. D'accord, annonçons les résultats maintenant.

QI8BX8]@1ON(86TI4A39(ZA .png

🎜Il doit y avoir beaucoup de gens qui l'ont bien deviné. C'est super. Applaudissez-vous. Le résultat de sortie de cet exemple semble être le contenu derrière die. Alors, que fait cet opérateur ? Comment l'utiliser Quoi ? 🎜🎜Jetons un coup d'œil à l'utilisation de cet opérateur 🎜rrreee🎜C'est l'utilisation de cet opérateur, mais regardons quelques précautions ou d'autres choses 🎜🎜🎜Pour les débutants, une règle simple est la suivante : si vous le pouvez. Pour obtenir une valeur quelque part, vous pouvez y ajouter l'opérateur @. Par exemple, vous pouvez le placer avant les variables, les fonctions et les appels include, les constantes, etc. Il ne peut pas être placé avant la définition d'un. fonction ou classe, et ne peut pas non plus être utilisé dans des structures conditionnelles telles que if et foreach 🎜🎜En même temps, nous devons faire attention à : 🎜🎜Actuellement. Le préfixe d'opérateur de contrôle d'erreur @" désactivera même le rapport d'erreurs pour les erreurs fatales qui entraînent la fin du script. Cela signifie que si "@" est utilisé pour supprimer un message d'erreur avant un appel de fonction qui n'existe pas ou dont la mauvaise lettre est tapée, le script ne supprimera pas le message d'erreur. Il y aura des signes de la raison 🎜🎜C'est tout. Si vous voulez en savoir plus, vous pouvez cliquer sur ce → →🎜tutoriel vidéo php🎜🎜.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn