男女疯狂一边摸一边做羞羞视频|啊好深好硬快点用力别停动态图|亚洲一区无码中文字幕|特级无码毛片免费视频播放▽|久久狠狠躁免费观看|国内精品久久久久久网站

錯誤控制運算符

PHP 支持一個(gè)錯誤控制運算符:@。當將其放置在一個(gè) PHP 表達式之前,該表達式可能產(chǎn)生的任何錯誤診斷都被抑制。

如果用 set_error_handler() 設定了自定義的錯誤處理函數,即使診斷信息被抑制,也仍然會(huì )被調用,因此自定義錯誤處理函數應該調用 error_reporting(),并驗證 @ 操作符是否按照如下方式使用:

<?php
function my_error_handler($err_no$err_msg$filename$linenum) {
    if (!(
error_reporting() & $err_no)) {
        return 
false// 靜默
    
}
    
// ...
}
?>

警告

PHP 8.0.0 之前,如果診斷被抑制,則傳遞給自定義錯誤處理函數的嚴重性值則始終為 0 。 PHP 8.0.0 起,情況則不再如此。

error_get_last() 返回數組中的 "message" 元素儲存了表達式產(chǎn)生的任意錯誤信息。 此函數的返回結果會(huì )隨著(zhù)每次錯誤的發(fā)生而相應變化,所以需要盡早檢查。

<?php
/* 故意文件錯誤 */
$my_file = @file ('non_existent_file') or
    die (
"Failed opening file: error was '" error_get_last()['message'] . "'");

// 這適用于所有表達式,而不僅僅是函數:
$value = @$cache[$key];
// 如果索引 $key 不存在,則不會(huì )發(fā)出通知。

?>

注意: @ 運算符只對 表達式 有效。 對新手來(lái)說(shuō)一個(gè)簡(jiǎn)單的規則就是:如果能從某處獲得值,就能在它前面加上 @ 運算符。例如,可以把它放在變量,函數調用,某些語(yǔ)言構造調用(例如 include )等等之前。 不能把它放在函數或類(lèi)的定義之前,也不能用于條件結構例如 ifforeach 等。

警告

PHP 8.0.0 之前,@ 運算符會(huì )禁用導致腳本停止運行的嚴重錯誤。 例如在調用一個(gè)不存在的函數前添加 @,由于函數不可用或者輸入錯誤, 將會(huì )導致腳本終止,而不會(huì )說(shuō)明原因。

男女疯狂一边摸一边做羞羞视频|啊好深好硬快点用力别停动态图|亚洲一区无码中文字幕|特级无码毛片免费视频播放▽|久久狠狠躁免费观看|国内精品久久久久久网站