首頁  >  文章  >  後端開發  >  你使用過php中@這個運算子嗎?

你使用過php中@這個運算子嗎?

醉折花枝作酒筹
醉折花枝作酒筹原創
2021-08-06 17:22:392127瀏覽

今天我們介紹一個運算符,可能與之前的運算子有些許不同,但是這個運算子十分有用,有需要的可以參考參考。

我們介紹的是錯誤控制運算符,在介紹這個運算子用法之前,我們先來看一個這個運算符。

錯誤控制運算符,電腦語言,是php 支援一個運算子@。當將其放置在 php 表達式之前,該表達式可能產生的任何錯誤訊息都被忽略掉 。

如果啟動了track_errors特性,表達式產生的任何錯誤訊息都會存放在變數 $php_errormsg 中。此變數在每次出錯時都會被覆蓋,所以如果想用它的話就要儘早檢查。

我們已經知道了什麼叫做錯誤控制運算符,那麼來看看如何使用這個運算子吧,我們先來看一個小例子。

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

這個小例子的結果是什麼?大家可以猜測一下。好了,我們這就來公佈結果。

你使用過php中@這個運算子嗎?

應該有很多人猜對了吧,太棒了,給自己鼓鼓掌。這個範例輸出的結果好像是die後面的內容哦,那這個運算子是做什麼的呢?如何使用呢?

我們來看看這個運算運算子的用法吧。

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

這就是這個運算子的用法了,不過我們來看一些注意事項或是其他的吧。

對新手來說,一個簡單的規則是:如果你能從某處得到一個值,你可以在其中加入@運算子。例如,可以將其放在變數、函數和include呼叫、常數等之前。它不能放在函數或類別的定義之前,也不能用於ifforeach等條件結構中。

同時,我們必須要注意的是:

當前「@」錯誤控制運算子前綴甚至會使導致腳本終止的嚴重錯誤的錯誤報告失效。這意味著,如果在不存在或鍵入錯誤字母的函數呼叫之前使用“@”來抑制錯誤訊息,腳本將不會顯示原因的跡象。

就說到這裡了,有其他想知道的,可以點選這個喔。 → →php影片教學

#

以上是你使用過php中@這個運算子嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn