بسم الله الرحمن الرحيم
السلام عليكم و رحمة الله و بركاته ,,, نعود اليوم بحمد لله و بعد انقطاع طويل عن طرح الدروس بسبب الإنشغال بالإمتحانات لنكمل مسيرتنا في تعلم لغة php , و في الدرس السابق تحدثنا عن تعريف المصفوفات و فوائدها و تعرفنا على النوع الأول منها و هو المصفوفات الرقمية و تعرفنا غلى معنا المصفوفات الرقمية و كيفية تعريفها و بإمكانكم متابعة دروس الدورة من خلال الفهرس التالي :
- [دورة php - الدرس الأول] - تحضير البرامج و كتابة اول برنامج
- [دورة php - الدرس الثاني] - المتغيرات و طريقة تعريفها و انواعها و التعامل معها
- [دورة php - الدرس الثالث] - الجزء الأول : الطباعة المدمجة و تنسيق الصفحات لعرضها
- [دورة php - الدرس الرابـع] - الجزء الثاني : طباعة المتغيرات في النصوص و بعض الدوال
- [دورة php - الدرس الخامس] - الثوابت و متغيرات النظام و دوال لا يستغني عنها اي مبرمج
- [دورة php - الدرس السادس] - الجزء الأول : النماذج و كيفية تصميمها و فوائدها
- [دورة php - الدرس السابع] - الجزء الثاني : معالجة بيانات النماذج و برمجتها
- [دورة php - الدرس الثامن] - الجزء الثالث : تطبيق عملي للنماذج - اتصل بن
- [دورة php - الدرس التاسع] - الجزء الأول : الجمل الشرطية : if وانواعها
- [دورة php - الدرس العاشر] - الجزء الثاني : الجمل الشرطية : جملة switch
- [دورة php - الدرس الحادي عشر] - الجزء الأول : جمل التكرار و الدوران : for + while
- [دورة php - الدرس الثاني عشر] - الجزء الثاني : تكملة جمل التكرار و تطبيقات عليها
- [دورة php - الدرس الثالث عشر] - الجزء الأول : المصفوفات الرقمية و تعريفها
و في درسنا اليوم سنتحدث بإذن الله عن النوع الثاني من المصفوفات و هو المصفوفات الحرفية او ما تسمى بالمصفوفات المركبة و سنتعلم كيفية التعامل معها و تعريفها و استخدامها ..
في البداية اود التذكير بأن كل مصفوفة لها فهرس index و هو الأساس في تقسيمنا لأنواع المصفوفات في دروسنا و تعرفنا على المصفوفة الرقمية التي يكون الفهرس الخاص بها عبارة عن ارقام تبدأ من ال 0 و تنتهي بعدد عناصر المصفوفة - 1 , اما المصفوفة الحرفية او ما تسمى بالمصفوفة المركبة فإنها تختلف عن الرقمية بأن الفهرس الخاص بها هو ليس ارقاما و إنما من الممكن ان يكون اي شيء مثل حروف او حروف وارقام او كلمات ذات دلالة معينة او اي تركيبة من الحروف و الأرقام و الكلمات
لاحظ المثال التالي على المصفوفات الحرفية :
في البداية قمنا بتعريف اسم المتغير name_and_age$ على انه مصفوفة و بعد اشارة المساواة كتبنا الدالة array التي تعلن اننا سنعرف مصفوفة و في الداخل عرفنا عناصر المصفوفة لكن لاحظ اننا قمنا بكتابةكود PHP:
<?php
$name_and_age = array( 'ZAED'=>22,'SALEEM'=>20, 'SAIF'=>16 );
foreach ($name_and_age as $key => $value)
{
echo $key."=>".$value."<br />";
}
?>
zaed =>22
و
saleem => 20
و
saif => 16
و فصلنا بينهم بفاصلة
هل هي غريبة
لا يا اصدقائي الطريقة بسيطة فهذه عبارة عن مصفوفة حرفية لأعمار 3 اشخاص و الأسماء هنا تدلنا ان الفهرس للمصفوفة هو الأسم و عمر هذا الشخص هو القيمة الموجودة بعد الإشارة => , اي ان الصيغة العامة اننا نكتب كالتالي
name => age
هنا في هذا النوع نلاحظ انه الفهرس هو حرفي و ليس رقمي لذلك نستخدم نوع خاص من الدوران عادة يستخدم مع المصفوفات و هو foreach و كما نلاحظ اننا كتبنا دوران ليدور على عناصر المصفوفة و معنى جملة تعريف الدوران اي اجلب المفتاح key و القيمة التي توازيه value من المصفوفة name_and_age و اطبعهم على سطر
و بإمكانكم مشاهدة نتيجة تنفيذ الكود السابق عبر الرابط التالي :
http://www.al79n-php.info/less14/arr1.php
اما الآن سأنتقل الى موضوع اخر في المصفوفات و هو المصفوفات المتعددة الأبعاد , و هي بأبسط تعبير عبارة عن تخزين مجموعة من المصفوفات بداخل مصفوفة واحدة و نستفيد من هذه الفكرة عند عمل تصنيف لأقسام موقعنا مثلا نقول ان المنتدى عبارة عن موقع و فيه مصفوفتين كبيرتين و هما الأقسام الرئيسية مثلا (القسم العام و قسم تعليم و جامعات) و في نفس الوقت كل قسم يحتوي على مجموعة من من الأقسام الفرعية و الأقسام الفرعية تحتوي على مواضيع و هكذا ,, اي ان الأقسام هنا عبارة عن مصفوفات لكنها من الممكن ان تحتوي مصفوفات
اما طريقة تعريف هذا النوع من المصفوفات فهو كالتالي مثلا :
كود PHP:
<?php
$arr = array(
"age"=>array("zaed"=>23 , "saleem"=>23,"saif"=>17)
,
"job"=>array("hamzah"=>"driver" , "zaed"=>"programmer" , "saleem"=>"student")
);
foreach($arr as $key=>$value)
{
echo $key." : ".$value." <br/> ";
}
?>
سوف تلاحظ ان النتيجة انه سيطبع المفاتيح age و job و سيطبع بجانب كل واحد من هذه المفاتيح كلمة Array ليكون دلالة على انه كل واحد من هذا المفاتيح يشير الى مصفوفة و ليس الى قيمة واحدة
و النتيجة ستكون هكذا :
كود PHP:
age : Array
job : Array
نكتفي اخوتي بهذا القدر و الدرس القادم سيكون عبارة عن مجموعة من الدوال function التي تستخدم مع المصفوفات بكثرة و تفيد جدا في استخدام المصفوفات
اطيب تحية مني لكم
مواقع النشر (المفضلة)