الاثنين، 30 نوفمبر 2015

المصفوفة ثنائية الابعاد

المصفوفة ذات البعدين :
ترعف المصفوفة على انها متجه ثنائي البعد   Two-Dimensional , حيث يحتوي هذا المتجه ثنائي البعد على مجموعة من الصفوف Rows ومجموعة من الاعمدة Columns , وسنوضح الامر بالمثال التالي الخاص بالسيارات :

حيث نلاحظ في الصورة اعلاه ان المصفوفة تتكون من بعدين فابعاد الصف  يتكون من اربعة صفوف وابعاد العمود يتكون من ثلاث اعمدة . ويكون برمجة هذه المصفوفة بالشكل التالي :هنا يكون اسم المصفوفة هو Cars ولكي لا ننسى $ حيث تسبق المتغير في لغة PHP. وهنا المتغير Cars تم تعريفه من نوع Array اي من نوع المصفوفة 
$cars = array
  (array("Volvo",22,18),array("BMW",15,13),array("Saab",5,2),array("Land Rover",17,15)); 


والان في حالة طباعة  اي عنصر من تلك العناصر  في المصفوفة يجب ان نقوم بتحديد رقم الصف والعمود في المصفوفة لان وكما نعلم بان كل خلية في المصفوفة هي عبارة عن عنوانين عنوان يشير الى الصف وعنوان يشير الى  العمود 
<?php
echo $cars[0][0].": In stock: ".$cars[0][1].", sold: ".$cars[0][2].".<br>";
echo $cars[1][0].": In stock: ".$cars[1][1].", sold: ".$cars[1][2].".<br>";
echo $cars[2][0].": In stock: ".$cars[2][1].", sold: ".$cars[2][2].".<br>";
echo $cars[3][0].": In stock: ".$cars[3][1].", sold: ".$cars[3][2].".<br>";
?>

يمكننا أيضا وضع حلقة For داخل آخرى للحلقة للحصول على عناصر المصفوفة     Cars$ (فعداد for الاول يشير الى عنوان الصف وعداد for الثاني يشير الى عنوان العمود ) وهذه الطريقة افضل واكثر احترافية 
<?php
for ($row = 0; $row < 4; $row++) {
  echo "<p><b>Row number $row</b></p>";
  echo "<ul>";
  for ($col = 0; $col < 3; $col++) {
    echo "<li>".$cars[$row][$col]."</li>";
  }
  echo "</ul>";
}
?>

ليست هناك تعليقات :

إرسال تعليق