عرض مشاركة واحدة
  #11 (permalink)  
قديم 06-09-2005, 03:07 PM
Ahmed Tohamy Ahmed Tohamy غير متواجد حالياً
 
تاريخ التسجيل: Jun 2005
المشاركات: 54
Post تاسعا : الجملة الشرطية Switch

تاسعا : الجملة الشرطية SWITCH

بعد أن شرحنا سابقا الجمل الشرطية الثلاثة المترابطة ( if و else و elseif ) سوف نشرح الآن الجملة switch ..
في الحقيقة الجملة switch تقوم باختصار الجمل الثلاث السابقة ، حيث أنها تتيح إدخال أكثر من شرط وليست كالجملة if التي تحتاج للجملة elseif حتى تدخل أكثر من شرط .

سوف نقوم بتطبيق مباشر على مثالنا ... فعلى سبيل المثال لو أردنا معرفة كيف عرف الزبون بموقعنا ، سنضع قائمة منسدلة أولا في الفورم كما يلي :
كود:
	<tr>
	  <td width="50%" align="center">
	  <select name="know">
	   <option value = "">
	   <option value = "a">من خلال منتديات سوالف
	   <option value = "b">من خلال إعلان في الجريدة
	   <option value = "c">من خلال إعلان تلفزيوني
	   <option value = "d">نصيحة من صديق
	  </select>
	  </td>
	  <td width="50%" align="center"><b><font face="Simplified Arabic">كيف عرفت 
	  بموقعنا ؟</font></b></td>
	</tr>
أضفه في الملف food.html في المكان الموضح بالصورة :
-------------------------------------------------------------------------

-------------------------------------------------------------------------
لاحظوا في الكود أننا أضفنا قائمة منسدلة واسميناها know ( أي أن المتغير في php سيكون know$ ) ، مكونة من أربع عناصر ، رموزها : (a,b,c,d) ... والآن سنكتب كود php يقوم باستقبال ما اختاره الزائر من القائمة ويظهره للزائر .

نستطيع كتابة هذا الكود كما أشرنا سابقا بطريقتين :
1- بطريقة الجمل الشرطية if - else - elseif :
-------------------------------------------------------------------------

-------------------------------------------------------------------------
لقد شرحنا طريقة عمل هذه الجمل في الدرس السابق وأفترض انكم تفهمون تماما ما قمت بعمله هنا ! أليس كذلك ؟!؟
2- بطريقة الجملة switch :
--------------------------------------------------------------------------

--------------------------------------------------------------------------
والآن سأبدأ بشرح الجملة بالتفصيل :
أولا قمنا بكتابة الجملة وبجانبها قوسين فيهما المتغير الذي جلبنا منه القيم ، ألا وهو القائمة المنسدلة التي أسميناها know$ .
هذه الجملة مشابهة تماما للجملة if ، ولكن هناك اختلافين :
الأول : في القوسين بدلا من كتابة الشرط كما في الجملة if ، نكتب فقط المتغير الذي سنطبق عليه الشروط .
الثاني : في الجملة if لا داعي للأقواس المعقوفة { } إلا إذا طبقنا أكثر من جملة واحدة ، لكن في switch فهذه الأقواس ضرورية دائما .
والآن سنأتي لتوابع الجملة switch وهي ثلاثة فقط :
case و break و default .
التابع الأول case ... ويستخدم لوضع الشرط ، فمثالنا السابق يقول : ( switch تمرير المتغير know$ على الحالات case ففي حالة a قم بعمل التنفيذ ... ) وهنا يوجد عندنا أربع حالات a و b و c وd ، سوف تقوم الجملة switch بتمرير المتغير know$ على هذه الحالات كلها ، وإذا انطبق المتغير مع أحدها سوف يطبق ما بداخلها ، ولكن هذه الجملة ستستمر في التطبيق حتى تصطدم بالجملة break فلو لم نضع هذه الجملة سوف يستمر بتطبيق الشرط المتحقق وما بعده غن كان بعده شيء ، لذا عند نهاية كل حالة (شرط) نضع الجملة break لننبه الجملة switch أن الشرط قد انتهى .
ولكن ماذا لو لم ينطبق أي من هذه الحالات ( الشروط ) ، عندها ستطبق switch ما يوجد داخل default ، فـdefault هذه قريبة جدا من عمل الجملة else إذا تذكرون !! حيث إذا لم ينطبق أي من الشروط السابقة سيطبق الأمور التي فيها .

هذا كل ما في الجملة switch .. وأريد أن أنبه لأمر مهم أنه يمكننا وضع حالتين أو أكثر لكل شرط كما يلي :
--------------------------------------------------------------------------

--------------------------------------------------------------------------
في الحقيقة لم يخطر ببالي مثال حي الآن ، ولكن ستحتاجها مستقبلا ، فأحببت أن أنبهكم لها .

لقد انتهينا من هذا الدرس وبحمد الله ... ودرسنا التالي سيتمحور حول موضوع مثير جدا ألا وهو التكرار ، وكيفية تنفيذ الأوامر المكررة كثيرا بكتابة 4 أو 5 سطور فقط !!

انتظرونا ...

رد مع اقتباس