بسم الله الرحمن الرحيم،
فى هذا الدرس -بإذن الله- سنتعرف على المصفوفات بشكل تفصيلي ، سنتعرف أولاً على مفهوم المصفوفات، ومن ثم سنتعرف على أنواع المصفوفات، ومن ثم ندخل فى تفاصيل كتابة المصفوفات والتعامل معها.
- مفهوم المصفوفات.
المصفوفات هي ببساطة عبارة عن متغيرات يمكن إدخال أكثر من قيمة لها، ويتم الوصول إلى تلك القيم عن طريق الـKey الخاص بها، والذي يتم تعريفه تلقائيًا كأرقام، أو يمكن تعريفها من قبل المبرمج.
- أنواع المصفوفات.
المصفوفات لها أكثر من نوع، وتلك الأنواع تصنف حسب أبعاد المصفوفة، حيث توجد مصفوفة أحادية الأبعاد، ومصفوفة أخرى ثنائية الأبعاد ومصفوفة ثلاثية الأبعاد إلخ.
وفكرة تلك الأبعاد أن أحادية الأبعاد يكون لكل Key فى المصفوفة عبارة عن متغير واحد يحمل قيمة واحدة، أما ثنائية الأبعاد يتكون كل Key فيها من مصفوفة أخري لها أكثر من قيمة، أما ثلاثية الأبعاد يتكون كل Key منها من مصفوفة كل Key فيها عبارة عن مصفوفة أخري كل Key منها عبارة عن متغير يحمل قيمة معينة.
أعتقد ان هذا الكلام صعب عند قرائته للوهلة الأولى، لكن عند الخوض فى المصفوفات ستدركون تفاهة وسهولة تلك الجمل الماضية.
- كتابة المصفوفات.
كتابة المصفوفات يكون عن طريق الإعلان عن متغير عادي ، ومن ثم عند تعريفه نقوم بكتابة كلمة Array ثم نقوم بفتح قوسين عاديين () ثم نكتب القيم المُراد إدخالها فى المصفوفة مع الفصل بين كل القيم بالفاصلة , وأيضًا مع مراعاة أن النصوص Strings يتم إدخالها بين أقواس إقتباس أما الأرقام يتم إدخالها مباشرة.
كمثال بسيط:
الجدير بالذكر أنه يمكن عند تعريف المصفوفة كتابة Array() فقط دون كتابة أى قيم بها ومن ثم تعريف القيم التي بها عن طريق ذكر الـKey ثم إدخال قيمة له كما بالمثال التالي:
- التحكم فى الـKeys.
فى الطريقة الثانية لتعريف القيم المُدخلة فى المصفوفات يمكننا تغيير الـKey عن طريقة كتابة ما نريد بين القوسين [] سواءًا كان نص أو رقم، أما فى الطريقة الأولى يمكننا ذلك عبر كتابة ما نريد ثم تلك العلامة: => ثم القيمة التى نريدها، فى المثالين التاليين سأستعرض لكم الطريقتين للمزيد من التوضيح:
سيكون لنا لقاء آخر لنستكمل حديثنا عن المصفوفات وأبعادها.
ملاحظة:
الـKeys و Offsets و Indexes هي كلها مسميات لنفس الشيء ، وغالبًا ما سأستخدم لفظ Index للتعبير عن الـKeys فى المصفوفات.
فى هذا الدرس -بإذن الله- سنتعرف على المصفوفات بشكل تفصيلي ، سنتعرف أولاً على مفهوم المصفوفات، ومن ثم سنتعرف على أنواع المصفوفات، ومن ثم ندخل فى تفاصيل كتابة المصفوفات والتعامل معها.
- مفهوم المصفوفات.
المصفوفات هي ببساطة عبارة عن متغيرات يمكن إدخال أكثر من قيمة لها، ويتم الوصول إلى تلك القيم عن طريق الـKey الخاص بها، والذي يتم تعريفه تلقائيًا كأرقام، أو يمكن تعريفها من قبل المبرمج.
- أنواع المصفوفات.
المصفوفات لها أكثر من نوع، وتلك الأنواع تصنف حسب أبعاد المصفوفة، حيث توجد مصفوفة أحادية الأبعاد، ومصفوفة أخرى ثنائية الأبعاد ومصفوفة ثلاثية الأبعاد إلخ.
وفكرة تلك الأبعاد أن أحادية الأبعاد يكون لكل Key فى المصفوفة عبارة عن متغير واحد يحمل قيمة واحدة، أما ثنائية الأبعاد يتكون كل Key فيها من مصفوفة أخري لها أكثر من قيمة، أما ثلاثية الأبعاد يتكون كل Key منها من مصفوفة كل Key فيها عبارة عن مصفوفة أخري كل Key منها عبارة عن متغير يحمل قيمة معينة.
أعتقد ان هذا الكلام صعب عند قرائته للوهلة الأولى، لكن عند الخوض فى المصفوفات ستدركون تفاهة وسهولة تلك الجمل الماضية.
- كتابة المصفوفات.
كتابة المصفوفات يكون عن طريق الإعلان عن متغير عادي ، ومن ثم عند تعريفه نقوم بكتابة كلمة Array ثم نقوم بفتح قوسين عاديين () ثم نكتب القيم المُراد إدخالها فى المصفوفة مع الفصل بين كل القيم بالفاصلة , وأيضًا مع مراعاة أن النصوص Strings يتم إدخالها بين أقواس إقتباس أما الأرقام يتم إدخالها مباشرة.
كمثال بسيط:
<?php
$countries = array("EGYPT","LIBYA","TUNISIA");
?>
تلك المصفوفة هي مصفوفة أحادية البُعد والـKeys لها معرفة من قبل اللغة بشكل تلقائي، حيث أنها مرقمة ترقيم يبدأ من الصفر، ويتم الوصول للـ Key عن طريق تلك الأقواس [] فمثلاً إذا أردنا طباعة كلمة EGYPT نستطيع ذلك عبر الوصول إلى الـKey رقم صفر؛ لأن الترقيم يبدأ من صفر.$countries = array("EGYPT","LIBYA","TUNISIA");
?>
<?php
$countries = array("EGYPT","LIBYA","TUNISIA");
echo $countries[0];
?>
بهذا يتم طباعة القيمة التى تحمل الـKey رقم 0 ، أما القيمة التي تليها فستحمل الـKey رقم "0+1" فيصبح الـkey للقيمة LIBYA تحمل 1، ومن ثم القيمة التي تليها تحمل الـKey رقم "1+1" فيصبح الـKey للقيمة TUNISIA هي 2.$countries = array("EGYPT","LIBYA","TUNISIA");
echo $countries[0];
?>
الجدير بالذكر أنه يمكن عند تعريف المصفوفة كتابة Array() فقط دون كتابة أى قيم بها ومن ثم تعريف القيم التي بها عن طريق ذكر الـKey ثم إدخال قيمة له كما بالمثال التالي:
<?php
$countries = array();
$countries[0] = "EGYPT";
$countries[1] = "LIBYA";
$countries[2] = "TUNISIA";
?>
كما يمكن تعريف المصفوفة كما فى الطريقة الأولى ومن ثم إضافة قيم لها عبر الطريقة الثانية، وذلك كالتالي:$countries = array();
$countries[0] = "EGYPT";
$countries[1] = "LIBYA";
$countries[2] = "TUNISIA";
?>
<?php
$countries = array("EGYPT","LIBYA","TUNISIA");
$countries[3] = "ALGERIA";
$countries[4] = "MOROCCO";
?>
$countries = array("EGYPT","LIBYA","TUNISIA");
$countries[3] = "ALGERIA";
$countries[4] = "MOROCCO";
?>
- التحكم فى الـKeys.
فى الطريقة الثانية لتعريف القيم المُدخلة فى المصفوفات يمكننا تغيير الـKey عن طريقة كتابة ما نريد بين القوسين [] سواءًا كان نص أو رقم، أما فى الطريقة الأولى يمكننا ذلك عبر كتابة ما نريد ثم تلك العلامة: => ثم القيمة التى نريدها، فى المثالين التاليين سأستعرض لكم الطريقتين للمزيد من التوضيح:
<?php
$countries = array("EG"=>"EGYPT",[2]=>"LIBYA",[3]=>"TUNISIA");
$countries["SU"] = "SUDAN";
echo $countris["EG"]."<br>".$countries["SU"};
?>
مع العلم إنه إنك إذا قمت فى حالة تعريف قيم المصفوفة فى نفس سطر الإعلان عن المتغير بداخل كلمة array وقمت بتغيير الـKey لقيمة رقمية معينة سيتم العدّ على أساسها .. أى أن الـKey التى تليها ستكون "س + 1" حيث س يتكون هي الـKey التي قمت بإدخالها للقيمة الأولى.$countries = array("EG"=>"EGYPT",[2]=>"LIBYA",[3]=>"TUNISIA");
$countries["SU"] = "SUDAN";
echo $countris["EG"]."<br>".$countries["SU"};
?>
سيكون لنا لقاء آخر لنستكمل حديثنا عن المصفوفات وأبعادها.
ملاحظة:
الـKeys و Offsets و Indexes هي كلها مسميات لنفس الشيء ، وغالبًا ما سأستخدم لفظ Index للتعبير عن الـKeys فى المصفوفات.
شروحك جميعها رائعه وسهله الفهم بالنسبه لمبتدى مثلى شكرا لك
ردحذف