campaign-experts

طریقه ساخت ارور 404 در فریم ورک لاراول



visibility  
mode_comment   ۰

استثنائات موجود در زبان PHP، مشابه استثنائات دیگر زبان های برنامه نویسی می باشد. زمانی که یک ارور یا اتفاق غیرمنتظره مانند ارور 404 پدیدار می شود، استثنائات حضور پیدا می کنند. تمام استثنائات PHP، کلاس Exception ابتدایی را توسعه می دهد. فریم ورک لاراول کلاسapp/Exceptions/Handler.php را فراهم می کند که تمام استثنائاتی که در اپلیکیشن رخ می دهد را مورد بررسی قرار می دهد. اساسا هر استثنائی که در اپلیکیشن رخ می دهد را می توان در این فایل پیکربندی کرد و به یک پاسخ مناسب دست یافت.

در این مقاله خواهیم دید که چطور یک response برای ارور 404 ایجاد کنیم و چطور وابسته به استثنائات، یک پیچ مرسوم را باز می گردانیم. برای ایجاد ارور 404 از لاراول 5.6 استفاده می کنیم. این کار به شما کمک می کند برای هر HTTP Exception که می خواهید، یک پیج مرسوم (مانند ارور 404) را برگردانید.

نصب پروژه لاراول

برای ایجاد یک پروژه لاراول جدید، دستور زیر را اجرا کنید تا یک پروژه جدید را در پوشه ای به نام errors ایجاد کنید.

 

Handling exceptions

تمام تغییرات مربوط به مدیریت استثنائات در app/Exceptions/Handler.php انجام خواهد شد. وقتی یک ارور رخ می دهد، یک view را باز خواهیم گرداند.

ارور 404

ارور 404

در اینجا یک ارور 404 را در فریم ورک لاراول درست می کنیم. در فایل app/Exceptions/Handler.php ، متد رندر را اصلاح کنید.

 

متخصص PHP
اگر دوست داری برنامه نویسی PHP رو حرفه ای یاد بگیری آیا می دانید بیش از ۸۰% وب سایت های موجود در ایران از جمله لیدرهای بازار وب (اسنپ، اسنپ فود، نت برگ، دیجیکالا، الوپیک و ... ) زبان برنامه نویسی PHP را به عنوان زبان اصلی برای پیاده سازی امکانات سمت سرور خود انتخاب کردند! متخصص PHP arrow_back

در متد رندر، بررسی می کنیم که آیا استثنا یک HTTP exception می باشد یا خیر. به این دلیل که ما متد get Status Codde() را فرامی خوانیم که فقط در HTTP exceptions در دسترس می باشد، این بررسی مهم است. اگر کد وضعیت عدد 404 است، ما errors.404 را با کد وضعیت نیز باز می گردانیم. اگر بخواهید می توانید نام view را نیز تغییر دهید.

باید یک view برای ارور 404 ایجاد کنید. بنابراین یک فایل view جدید errors/404.blade.php درست کنید.

 

اگر می خواهید یک پیج مرسوم برای هر HTTP exception دیگر بسازید، فقط کافی است یک if اضافه کنید و 404 را با کد جدید تعویض کنید.

 

صفحات HTTP Exceptions

ما می توانیم این فرایند را خودکار کنیم. اگر می توانستیم فقط یک فایل view جدید برای استثنا ایجاد کنیم عالی بود. دیگر نیازی نبود برای هر HTTP exception یک کد به app/Exceptions/handler.php اضافه کنیم. در app/Exceptions/Handler.php متد رندر را اصلاح کنید.

 

حالا شما باید با Status code استثنا یک view درست کنید. متد رندر بررسی می کند که آیا View در status code استثنا وجود دارد یا خیر. اگر view حاضر است، به سادگی یک HTTP response را با آن View و status code باز می گرداند.

برای مثال ما می توانیم errors/404.blade.php را برای ارور پیج های 404 و errors/500.blade.php را برای ارور پیج های 500 بسازیم.

ارور 404

مدیریت استثنائات مرسوم

بیاید ابتدا یک Custom exception ایجاد کنیم. کد زیر را اجرا کنید تا یک استثنا با نام Testing HttpException ایجاد کنید.

می توانید از این تکنیک برای مدیریت تمام استثنائات استفاده کنید.

comment دیدگاه کاربران

add_circle ارسال دیدگاه

خوشحال میشیم دیدگاه و یا تجربیات خودتون رو با ما در میون بذارید :