wellcome to Maxbuzz (Read Three Topics Below)

1.Maxbuzz Rules (qavanine forum)
2.Enteqadat va Pishnahadate shoma
3.Ranking (rotbe bandie karbaraye forum)
2.hale moshkele copy kardane axa moqeye post dadan
Log in

I forgot my password

Top posters
amirx_taek1!(†эямίлατσя) (513)
 
†эямίлατσя (385)
 
*per$eus* (299)
 
jav+d (183)
 
amirha$an (165)
 
sadegh_akbari21 (141)
 
n0!se (136)
 
mashr0ob (126)
 
amir*1995 (126)
 
Rastin (120)
 

Latest topics
» morteza pashaie
by amirx_taek1!(†эямίлατσя) 16/11/2014, 4:06 pm

» Youtube Facebook Hack 2011
by blst-maker 13/11/2014, 5:15 am

» Facebook 2.1 Version Free Download
by blst-maker 12/11/2014, 1:36 pm

» How To Hack Facebook Login Page
by blst-maker 12/11/2014, 1:34 pm

» dmp nimbuzz
by blst-maker 25/10/2014, 10:03 am

» 12 16 Nude Junior Girls
by blst-maker 25/10/2014, 10:00 am

» ReCoveR ID's By CReator password or cracked password or by
by shayan123456 5/10/2014, 12:14 am

» new broken ip Nimbuzz cracker by cobra very fast
by hrb1826 4/10/2014, 9:24 am

» ids arabic farsi symbol 3word for sell
by neymar.cfz.11 8/9/2014, 11:27 am

» nimbuzz hack mod.apk android
by neymar.cfz.11 8/9/2014, 11:08 am

» nimbuzz dc android networld-team
by neymar.cfz.11 6/9/2014, 9:54 am

» bombus 2014
by --)xerxes 6/9/2014, 1:31 am

» XMl jadide hacke java
by neymar.cfz.11 24/8/2014, 11:28 am

» XML jadide hack android and java
by neymar.cfz.11 24/8/2014, 11:26 am

» new vps bot upteate
by neymar.cfz.11 24/8/2014, 11:26 am

» phonegap GUI
by blst-maker 9/8/2014, 7:37 am

» badbuzz master anti flood
by blst-maker 29/7/2014, 11:17 am

» packup! nimbuzz
by blst-maker 29/7/2014, 11:03 am

» talkmod_bot_v3.4.jar
by --)xerxes 23/7/2014, 3:13 am

» HOT!!..New Nimuzz and All Mail Cracker Server Updated.
by crystallworlds 19/7/2014, 5:21 am

Online Stat

Keywords

game  download  games  city  


خطاها در PHP

 :: programing :: PHP

Go down

خطاها در PHP

Post by dear,lord on 14/7/2013, 12:43 pm


در هنگام کار با PHP ممکنه به چند نوع خطا برخورد کنید.این خطا ها براساس زمانی که اتفاق میافتن و اینکه آیا این خطاها درست شدنی هستن یا خیر دسته بندی میشن.این خطاها ممکنه به صورت خودکار توسط خود php اجرا بشن یا با استفاده از تابع trigger_error به وسیله کاربر اجرا بشن!!
خطاها زمانی رخ میدن که کار اشتباهی رو در کدهامون کرده باشیم.کارهایی مثل : اشتباه تایپی! ، حلقه های بی نهایت و …
اجازه بدید تا با دسته بندی خطاها در PHP آشنا بشیم :

Fatal error
Parse error
Warning
Notices

1- Fatal Error

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

Startup fatal error : این نوع خطا زمانی رخ میده که کدهای PHP نمیتونن اجرا بشن و مشکل از نصب یا تنظیمات PHP میتونه باشه.

Compile time fatal error : این خطا هنگامی رخ میده که از داده هایی استفاده کردید که وجود ندارن مثل فایلها ، توابع و کلاسها و … .

Run time fatal error : این خطا مثل خطای قبلی که هنگام کامپایل برنامه رخ میده.

نمونه ای از خطای Fatal Error

fnSwap();
echo "Swapped Successfully!"
?>

هنگام اجرای کد بالا به خطای زیر برمیخوریم که میگه

Fatal error: Call to undefined function fnSwap() in ... on line 2

تابع fnSwap رو نتونسته پیدا کنه.
۲ – Parse Error

نوع دوم خطاها Parse Error ها هستند.این نوع خطاها فقط در زمان اجرای برنامه تولید میشن و اسم دیگه این نوع خطاها Syntax Error هستنش.یعنی توی کدهامون اشتباه تایپی داشتیم یا مثلا آخر خط سمی کالن نذاشتیم و …. این خطا هم از اجرای بقیه برنامه جلوگیری میکنه و باید درستش کنید.

echo "content to be displayed to the browser!"
echo "
embedding line break";
?>

این کد به خاطر نذاشتن سمی کالن در انتهای خط اول خطا میده :

Parse error: syntax error, unexpected 'echo' (T_ECHO), expecting ',' or ';' in ... on line 3

3- Warning

این نوع از خطاها هم مثل Fatal Error در سه نوع دسته بندی زمانی قرار میگیره :

Start up warning

Compile time warning

Run time warning

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

$count = 0;
$total = 200;
$result = $total/$count;
echo "RESULT: ". $result;
?>

اگر کد بالا رو اجرا کنید میبینید که یک Warning در صفحه مثل زیر نمایش داده میشه :

Warning: Division by zero in ... on line 4

اما همینطور که میبینید بقیه کدها اجرا شدن و مانع از اجرای برنامه نشده.
۴ – Notice

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

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

$result += 1;
echo "RESULT: ". $result;
?>

و خطای ایجاد شده :

Notice: Undefined variable: result in ... on line 2
RESULT: 1

حرف آخر

با استفاده از تابع error_reporting میتونیم مشخص کنیم که کدوم نوع از خطاها نمایش داده بشن.البته این کار رو از طریق php.ini هم میتونید انجام بدید. اما دقت کنید که دونستن نوع خطاها و اینکه این خطا چرا اتفاق افتاده یکی از مهمترین قسمتهای PHP است !!بازدید : ۲۷۶
Incoming search terms

dear,lord
Member
Member

Posts : 33
Points : 89
Join date : 2013-07-14

View user profile

Back to top Go down

Back to top


 :: programing :: PHP

 
Permissions in this forum:
You cannot reply to topics in this forum