🔥 با کمک هوش مصنوعی در کمتر از 6 ماه فول‌استک شوید ...
۰ ثانیه
۰ دقیقه
۰ ساعت
۳ حمید مجتهد
کاربرد Throw new Exception چه است؟
استاد ماندیس بحرینی حل شده توسط استاد ماندیس بحرینی

سلام و احترام

کاربر throw new Exception در کل اینطوریه که باهاش بتونیم یک پیام دخواه رو به بلاک مرتبط catch بدهیم، درست متوجه شدم اینو یا خیر؟

سلام اگر اشتباه نکرده باشم این یک exeption رو میسازه و پرتاب میکنه.

برای ساخت exeption استفاده میشه.

 

صلاح روزبه ۰۴ تیر ۱۳۹۹، ۰۸:۲۵

سلام.

throw که میکنید اکسپشنی پرتاب میشه، اینجا باید catch ای مرتبط با exception باشه که اکسپشنو بگیره وگرنه خطای Uncaught exception دریافت میکنید.

اگر catch ای برای قسمتی از کد در نظر نگیرید باز هم میتونید throw کنید و بجای catch میتونید با set_exception_handler اکسپشن‌ها رو دریافت و مدیریت کنید.

در فریمورک‌ها در کنار try/catch‌ها ازین تابع هم استفاده شده.

بهترین پاسخ
استاد ماندیس بحرینی ۰۵ تیر ۱۳۹۹، ۱۸:۱۳

سلام.

یکی از کاربردهاش اینه که میتونید باهاش Exeption‌های اختصاصی خودتون رو throw بکنید و این Exeption‌ها لزوما یک ایراد منطقی یا از پیش تعریف شده نیست.

 

بهتر بخوام بگم ممکنه تو الگوریتمی که شما برای خودتون توسعه دادید مثلا دوست داشته باشید کاربر با سن زیر 18 سال نتونه به قسمتی دسترسی داشته باشه.

اگر کاربر بخواد به اون قسمت دسترسی پیدا کنه مثلا میتونید یه OutOfAgeBoundExeption که خودتون تعریفش کردین پرتاب بکنید. این مورد از نظر شما و طبق الگوریتم شما یک Exeption تلقی میشه ولی از نظر زبان PHP یک Exeption نیست.

 

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

موفق باشد.

سمند زنجانی ۲۴ مرداد ۱۳۹۹، ۰۹:۰۲