我第一次遇到try,在PHP中拋出catch語句,並且我覺得這可能是更好的處理錯誤的方法,因爲我很亂我的錯誤處理程序很多if else語句,但是由於我正在對腳本執行CRUD操作,因此我希望我的錯誤處理程序執行兩項任務。使用嘗試的問題,拋出PHP處理錯誤
- 顯示用戶可讀或 定製錯誤消息發送回用戶 。
- 捕獲文件中的所有錯誤 我要閱讀。
我用下面的代碼..
try
{
$name = filter_var($_POST['name'], FILTER_SANITIZE_STRING);
if($cname == $name)
{
throw new Exception('Sorry, Please Change the value to update ');
}
$sth = $dbh->prepare("UPDATE countries SET name = :name WHERE id = :cid");
$sth->bindParam(':name', $name);
$sth->bindParam(':cid', $cid);
$sth->execute();
}
catch(PDOException $e)
{
echo $e->getMessage();
file_put_contents("resources/logs/Connection-log.txt", DATE.PHP_EOL.$e->getMessage().PHP_EOL.PHP_EOL, FILE_APPEND);
}
如果條件$ CNAME == $的名字是真的,我只是想顯示錯誤「對不起,請更改爲更新的價值,但是這不會發生在這裏,而是會引發此消息的致命錯誤。
Fatal error: Uncaught exception 'Exception' with message 'Sorry, Please Change the value to update ' in /Applications/MAMP/htdocs/kokaris/administrator/resources/library/models/countries.php:24 Stack trace: #0 /Applications/MAMP/htdocs/kokaris/administrator/location-manager.php(43): include() #1 {main} thrown in /Applications/MAMP/htdocs/kokaris/administrator/resources/library/models/countries.php on line 24
我該如何做到這一點?
謝謝你..
不錯:),這麼簡單和容易聯合國derstand,非常感謝你.. – 2011-04-09 11:44:05
不客氣:-) – 2011-04-09 11:44:41