سلام دوستان
یه سوال برام پیش اومده
من معمولا از set_error_handler برای هندل کردن خطاها استفاده میکنم. اما میخوام بدونم مزیت استفاده از try...catch چی هست.
مثلا این مثال رو در نظر بگیرید که از کاربر یه عدد میگیریم و معکوسش رو برمیگردونیم. اگر کاربر عدد صفر وارد کنه ، خطای تقسیم بر صفر ایجاد میشه.
اگه بخوایم با exception اینو پیاده کنیم به این صورت میشه:
کد PHP:
try { if($_GET['num']==0){ throw new Exception('division by zero'); } echo 1/$_GET['num']; } catch( Exception $e ) { echo $e->getMessage(); }
کد PHP:
set_error_handler(function(){ echo "division by zero"; }); echo 1/$_GET['num'];
حالا میخوام بدونم اصلا مزیت exceptionها چی هست . یعنی اینکه با exceptionها چی کار میشه کرد که با اون روش دیگه نمیشه.
- - , .
برچسب:
نویسنده: محمد رضا جوادیان