您好,登錄后才能下訂單哦!
什么是php中的錯(cuò)誤抑制符?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
php中的錯(cuò)誤抑制符是@,@運(yùn)算符只對(duì)表達(dá)式有效。當(dāng)我們將其放置在一個(gè)PHP表達(dá)式之前,該表達(dá)式可能產(chǎn)生的任何錯(cuò)誤信息都會(huì)被忽略掉,使用方法如:【$value = @$cache[$key];】。
PHP 支持一個(gè)錯(cuò)誤控制運(yùn)算符:@。當(dāng)將其放置在一個(gè) PHP 表達(dá)式之前,該表達(dá)式可能產(chǎn)生的任何錯(cuò)誤信息都被忽略掉。
如果用 set_error_handler() 設(shè)定了自定義的錯(cuò)誤處理函數(shù),仍然會(huì)被調(diào)用,但是此錯(cuò)誤處理函數(shù)可以(并且也應(yīng)該)調(diào)用 error_reporting(),而該函數(shù)在出錯(cuò)語句前有 @ 時(shí)將返回 0。
舉例:
<?php /* Intentional file error */ $my_file = @file ('non_existent_file') or die ("Failed opening file: error was '$php_errormsg'"); // this works for any expression, not just functions: $value = @$cache[$key]; // will not issue a notice if the index $key doesn't exist. ?>
@ 運(yùn)算符只對(duì)表達(dá)式有效。
對(duì)新手來說一個(gè)簡單的規(guī)則就是:如果能從某處得到值,就能在它前面加上 @ 運(yùn)算符。例如,可以把它放在變量,函數(shù)和 include 調(diào)用,常量,等等之前。不能把它放在函數(shù)或類的定義之前,也不能用于條件結(jié)構(gòu)例如 if 和 foreach 等。
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。