trigger_error() 函數是 PHP 中的一個內置函數,能夠充當 內置 錯誤處理程序。該函數通常被程序員用來觸發或生成用戶級錯誤、通知或消息。它返回一個布爾值,即在表達式成功時返回 TRUE,在表達式失敗時返回 FALSE。
用法:
bool trigger_error(string $message, int $error_level);
這裏,$message 參數是要顯示的消息,它是字符串類型,而 $error_level 用於描述必須顯示的錯誤類型,它是整數類型。對於任何 trigger_error() 函數,$message 是必需的,$error_level 可以根據用戶要求是可選的,$message 的最大長度為 1024 字節。
範例1:在此示例中,用戶定義的函數 doFunction($var) 接受一個值作為該函數內的參數,如果該值是數字,則將檢查參數,然後 $var.“is numeric” 將被打印,否則將引發錯誤帶有消息“變量必須是數字”,這是通過 trigger_error() 函數完成的。
PHP
<?php
function doFunction($var) {
if(is_numeric($var)) {
echo $var.' is numeric';
}
else {
trigger_error('variable must be numeric');
}
}
$new_var = 'GFG';
doFunction($new_var);
?>
輸出:
PHP Notice: variable must be numeric in /home/d87c8897dcede28086b7e4f06f5fafc7.php on line 9\
範例2:默認情況下,使用 trigger_error() 函數將生成 PHP 通知,但用戶也可以通過在 trigger_error() 函數中添加參數來生成 PHP 錯誤或 PHP 警告,如下例所示。
在此示例中,我們創建了一個除法函數,如果 $second 的值等於 0,則該函數接受兩個參數,trigger_error() 函數將拋出 PHP 致命錯誤,因為在參數中 E_USER_ERROR 與錯誤消息一起傳遞給 trigger_error(),如果$second 的值不等於 0,然後 $first 將除以 $second 並顯示結果。
PHP
<?php
function divide($first,$second) {
if ($second == 0) {
trigger_error("Cannot divide by zero", E_USER_ERROR);
}
else {
echo $first/$second ;
}
}
divide(2,0)
?>
輸出:
PHP Fatal error: Cannot divide by zero in /home/5152fc6f9b996848e7b1f855e7d0b5b9.php on line 6
參考: https://www.php.net/manual/en/function.trigger-error.php
相關用法
- PHP imagecreatetruecolor()用法及代碼示例
- PHP fpassthru( )用法及代碼示例
- PHP ImagickDraw getTextAlignment()用法及代碼示例
- PHP Ds\Sequence last()用法及代碼示例
- PHP Imagick floodFillPaintImage()用法及代碼示例
- PHP array_udiff_uassoc()用法及代碼示例
- PHP geoip_continent_code_by_name()用法及代碼示例
- PHP GmagickPixel setcolor()用法及代碼示例
- PHP opendir()用法及代碼示例
- PHP cal_to_jd()用法及代碼示例
- PHP stream_get_transports()用法及代碼示例
- PHP Ds\Deque pop()用法及代碼示例
- PHP SimpleXMLElement children()用法及代碼示例
- PHP array_intersect_ukey()用法及代碼示例
- PHP is_numeric()用法及代碼示例
- PHP Imagick adaptiveSharpenImage()用法及代碼示例
- PHP XMLWriter endDtdEntity()用法及代碼示例
- PHP isset()用法及代碼示例
注:本文由純淨天空篩選整理自talktoosaurabh大神的英文原創作品 PHP trigger_error() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。