Exception چیست ؟

amirepsilon

Active Member
ممنون
ولی انگلیسیشو خونه بودم
میخواستم به زبون مادری بفهمم چیه !!!!
 

parsiteam

Member
سلام . کار Exception گرفتن یا به عبارتی catch کردن خطا های موقع اجرای برنامه است . به طور مثال ( از سایت php.net ) :

PHP:
<?php
function inverse($x) {
    if (!$x) {
        throw new Exception('Division by zero.');
    }
    else return 1/$x;
}

try {
    echo inverse(5) . "\n";
    echo inverse(0) . "\n";
} catch (Exception $e) {
    echo 'Caught exception: ',  $e->getMessage(), "\n";
}

// Continue execution
echo 'Hello World';
?>

در خط زیر :
PHP:
echo inverse(0) . "\n";
به تابع گفتیم که 1 رو تقسیم بر صفر بکن . چون این کار عملی نیست و PHP خطا موقع اجرا میگیره ما میایم با try و catch اینگونه خطا ها رو میگریم و با Exception یک تعریف واسش میزاریم . مثلا تقسیم نادرست . بعد میایم این خطا ها رو بررسی میکنیم که آیا خطایی وجود داشت یا نه که در این مثال با $e->getMessage() خطا رو نمایش میدیم .

مثالی که زدم خیلی ساده و قابل فهمه . یک کم روی منطقش فکر کنی متوجه کاربرد Exception میشی داداشی .

موفق باشی
 

parsiteam

Member
درضمن یادم رفت بگم که Exception خودش یک کلاسه . یعنی میتونه فرزند کلاس دیگه باشه یا فرزند بگیره .
 

Y.P.Y

Well-Known Member
سلام،
گرفتن یا به عبارتی catch کردن خطا های موقع اجرای برنامه است
ParsiTeam عزیز Exception خطا رو Catch نمی کنه، بلکه استثنا/رویداد رو Catch/Throw می کنه.
Error handle نیست.
 

جدیدترین ارسال ها

بالا