今天我們介紹一個(gè)運(yùn)算符,可能與之前的運(yùn)算符有些許不同,但是這個(gè)運(yùn)算符十分有用,有需要的可以參考參考。
我們介紹的是錯(cuò)誤控制運(yùn)算符,在介紹這個(gè)運(yùn)算符用法之前,我們來(lái)看一個(gè)這個(gè)運(yùn)算符。
錯(cuò)誤控制運(yùn)算符,計(jì)算機(jī)語(yǔ)言,是php 支持一個(gè)運(yùn)算符@
。當(dāng)將其放置在一個(gè) php 表達(dá)式之前,該表達(dá)式可能產(chǎn)生的任何錯(cuò)誤信息都被忽略掉 。
如果激活了track_errors
特性,表達(dá)式所產(chǎn)生的任何錯(cuò)誤信息都被存放在變量 $php_errormsg
中。此變量在每次出錯(cuò)時(shí)都會(huì)被覆蓋,所以如果想用它的話(huà)就要盡早檢查。
我們已經(jīng)知道了什么叫做錯(cuò)誤控制運(yùn)算符,那么來(lái)看一下如何使用這個(gè)運(yùn)算符吧,我們先來(lái)看一個(gè)小例子。
<?php $my_file = @file('grand.php') or die('文件格式發(fā)生錯(cuò)誤!'); $value = @ $cache[$key]; ?>
這個(gè)小例子的結(jié)果是什么?大家可以猜測(cè)一下。好了,我們這就來(lái)公布結(jié)果。
應(yīng)該有很多人都猜對(duì)了吧,太棒了,給自己鼓鼓掌。這個(gè)例子輸出的結(jié)果好像是die后面的內(nèi)容哦,那這個(gè)運(yùn)算符是干什么的呢?如何使用呢?
我們來(lái)看看這個(gè)運(yùn)算運(yùn)算符的用法吧。
<?php $my_file = @file ('不存在的文件名稱(chēng)') or die ("打開(kāi)文件失?。哄e(cuò)誤為'" . error_get_last()['message'] . "'"); //適用于任何表達(dá)式,而不僅僅是函數(shù): $value = @$cache[$key]; //如果索引$key不存在,則不會(huì)發(fā)出通知。 ?>
這就是這個(gè)運(yùn)算符的用法了,不過(guò)我們來(lái)看一些注意事項(xiàng)或是其他的吧。
對(duì)于新手來(lái)說(shuō),一個(gè)簡(jiǎn)單的規(guī)則是:如果你能從某處獲得一個(gè)值,你可以在其中添加@運(yùn)算符。例如,可以將其放在變量、函數(shù)和include
調(diào)用、常量等之前。它不能放在函數(shù)或類(lèi)的定義之前,也不能用于if
和foreach
等條件結(jié)構(gòu)中。
同時(shí),我們必須要注意的是:
當(dāng)前“@”錯(cuò)誤控制運(yùn)算符前綴甚至?xí)箤?dǎo)致腳本終止的嚴(yán)重錯(cuò)誤的錯(cuò)誤報(bào)告失效。這意味著,如果在不存在或鍵入錯(cuò)誤字母的函數(shù)調(diào)用之前使用“@”來(lái)抑制錯(cuò)誤消息,腳本將不會(huì)顯示原因的跡象。
就說(shuō)到這里了,有其他想知道的,可以點(diǎn)擊這個(gè)哦?!?→php視頻教程