عنوان مقاله :

خطا های احتمالی در برنامه نویسی php

گردآوری و تالیف : محمد صادق زحمتکش
تاریخ انتشار : 31 خرداد 1396
دسته بندی ها : پی اچ پی

در زبان های برنامه نویسی اگر کامپایلر نتواند کدی که نوشتید را به زبان ماشین ترجمه کند و یا در هنگام ترجمه و اجرا به دلیل مشکلات محاسباتی و منطقی برنامه دچار اختلال شود و به هر دلیل دیگر از عملگر ها گرفته تا قواعد کد نویسی که منجر به بروز مشکل و عدم اجرای صحیح برنامه می شود با اخطار و ارور مواجه می شویم.

در این مقاله میخواهیم ارور ها و اخطار ها و هشدار های مربوط به php را شرح و روش برطرف کردن آن هارا توضیح دهیم.

1-Fatal error 

که به خطای مهلک یا خطای بحرانی معروفه وبعد از این خطا برنامه ادامه پیدا نمیکند ومی ایستد

<?

Method();

echo "ok";

?>

اگر کد بالارو اجرا کنیم با خطا مواجه میشیم چون پی اچ پی نتونسته تابع method  پیدا کنه در اصل تابع متدی هم تعریف نکردیم . توابعی که در php وجود ندارد باید تعریف و سپس فراخوانی شود در غیر این صورت با ارور Fatal error مواجه می شویم.

2-parse error

این خطا که معروف به syntax error هم هست زمان اجرای برنامه مشخص میشه و زمانی رخ میدهد که یک سیمیکالن (;) نگذاشته باشیم و یا دچار یک اشتباه تایپی شده باشیم این خطا نیز از ادامه اجرای برنامه جلوگیری میکند.برای رفع این خطا ، خط هایی که ارور مشخص میکند را بازیابی و مشکلات تایپی که عموما شامل ; ، () ، : و... می باشد را برطرف و برنامه را run کنید.

<?

echo "php error"

echo "php is Excellent”;

?>

در کد بالا خطا به این دلیل بوجود می آید که در آخر کد اول سیمیکالن (;) نگذاشته ایم.

3-Warning

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

<?

$x =200;

$y =0;

$z = $x/$y;

echo "result: " . $z;

?>

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

Notices -4

این نوع اخطار هم مثل انواع خطاهای قبلی می تواند خودکار توسط خود PHP و یا با استفاده از تابع trigger_error که توسط کاربر ایجاد شده است درست شوند. این نوع خطا بیشتر هشداری است و برنامه نویس را از عملکرد توابع و کدهای نوشته شده آگاه میسازد.

<?php

    $x += 1;

    echo "RESULT: ". $x;

?>

trigger_error-5

این تابع از خطاهای احتمالی را پیش‌بینی میکند و از ایجاد اشکال در روند برنامه جلوگیری میکند.به عنوان مثال به کد های زیر توجه فرمایید:

<?php

$test=2;

if ($test>1)

{

trigger_error("Value must be 1 or below");

}

?>

با تو جه به کد بالا اگر متغیر از 1 بیشتر باشد برنامه باید تابع trigger_error  که شامل خطای 

Notice: Value must be 1 or below

in C:\webfolder\test.php on line 6

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

6- Deprecated error

این قابلیت از نسخه 5 به PHP اضافه شده است. این خطا در واقع یک راهنما است که به شما اطلاع می‌دهد که دستوری - فانکشن و قطعه کدی که در PHP استفاده کرده اید در نسخه‌های بالاتر ‌PHP منسوخ و حذف شده و شما می بایست تا قبل از به روز کردن به نسخه بالاتر به فکر جایگزین برای آن باشید معمولا با یک جستجوی ساده در سایت PHP میتوانید معادل جدید آن را پیدا کنید.

طبیعی است در صورت عدم توجه به این خطا ها و یا نادیده گرفتن آن ها اگر هم سایت کار کند با کندی و پرکردن لاگ های سرور و سایت به همراه خواهد بود.

خطاهایی که اغلب در حین برنامه نویسی به آنها برمیخورید از این دسته اند که با دانستن مفهوم خطا میتوانید به راحتی به رفع آن بپردازید علاوه بر این که ادیتور هایی مانند دریم وی ور خود دارای یک خطایاب قدرتمند است که شمارا به خط خطا راهنمایی و مثال هایی برای اصلاح و برطرف کردن آن برای شما در ادامه ی خط خطا می آورد تا شما بتوانید آنرا اصلاح نمایید.

مقالات پیشنهادی

LAMP سرور چیست ؟

LAMP مخفف کلمات Linux Apache MySQL PHP است. اگر یک توسعه دهنده php باشید مطمئنا با همه این موارد آشنایی دارید. اما به صورت خیلی کوتاه در رابطه با هرکد...

تنظیمات فایل پیکر بندی php

قبل از شروع مطالب نگاهی اجمالی به ویژگی های فایل پیکربندی PHP (php.ini) می تواند جهت یادگیری سریعتر شما عزیزان مفید واقع شود . نام این فایل php.ini می...

مدیریت فایلها در زبان برنامه نویسی PHP - بخش اول

فایل ها به دو دسته تقسیم می شوند . فایل ها با فرمت ascci و فایل با فرمت باینری. فایلهای با قالب متنی از نوع اسکی هستند.مثل .txt , html , asp , .php ای...

کتابخانه ی Requests for php

یکی دیگر از کتابخانه های php ، Requests است که در این مقاله قصد داریم به معرفی اجمالی و قدرت و توانایی های این کتابخانه در پیشبرد پروژه های php بپرداز...

دیدگاه های ارزشمند شما

برای ارسال نظر لازم است ابتدا وارد سایت شوید
هیچ دیدگاهی تا به این لحظه برای این موضوع ثبت نشده است