PHP 错误处理: die() vs trigger_error() vs throw 异常
关于PHP中的错误处理 - 据我所知,有3种样式:
-
die()
或样式:exit()
$con = mysql_connect("localhost","root","password"); if (!$con) { die('Could not connect: ' . mysql_error()); }
-
throw Exception
风格:if (!function_exists('curl_init')) { throw new Exception('need the CURL PHP extension. Recomplie PHP with curl'); }
-
trigger_error()
风格:if(!is_array($config) && isset($config)) { trigger_error('Error: config is not an array or is not set', E_USER_ERROR); }
现在,在PHP手册中,使用了所有三种方法。
我想知道的是我应该更喜欢哪种风格,为什么?
这3个滴在彼此的替代品中,因此可以互换使用吗?
稍微OT:是只有我还是每个人都认为PHP错误处理选项太多了,以至于让php开发人员感到困惑?