شرح المصفوفات المفهرسة في PHP

تخيل أنك تبني صفحة "أفضل المنتجات" في متجر إلكتروني. اليوم لديك 3 منتجات، وغداً 30. إذا استخدمت متغيراً لكل منتج، سيصبح الكود فوضوياً بسرعة. هنا تبدأ قوة المصفوفات المفهرسة في PHP (Indexed Arrays).

في هذا الدرس ستتعلم كيف تنتقل من تخزين بيانات مشتتة إلى بنية منظمة، ثم كيف تقرأ العناصر، تعدّها، وتطبعها كلها بأسلوب احترافي بسيط.

لماذا نحتاج المصفوفات المفهرسة في PHP؟

قبل المصفوفات، قد تكتب شيئاً مثل:

<?php
$product1 = "Laptop";
$product2 = "Mouse";
$product3 = "Keyboard";
?>

هذا يعمل في البداية، لكنه غير عملي عند زيادة البيانات. الحل الأفضل:

<?php
$products = ["Laptop", "Mouse", "Keyboard"];
?>

الآن كل المنتجات داخل متغير واحد، ويمكنك إدارتها بسهولة.

ما هي Indexed Array؟

المصفوفة المفهرسة هي مصفوفة تُخزّن القيم بفهارس رقمية تلقائية تبدأ من 0.

العنصر الأول  → الفهرس 0
العنصر الثاني → الفهرس 1
العنصر الثالث → الفهرس 2
قاعدة ذهبية: عندما تبحث عن أول عنصر في المصفوفة، استخدم الفهرس 0 وليس 1.

الوصول إلى عناصر المصفوفة خطوة بخطوة

الكود:

<?php
$products = ["Laptop", "Mouse", "Keyboard"];

echo $products[0]; // Laptop
echo "<br>";
echo $products[2]; // Keyboard
?>

ما يظهر في المتصفح:

Laptop
Keyboard

بهذه الطريقة تستطيع اختيار أي عنصر عبر رقمه داخل المصفوفة.

حساب عدد العناصر باستخدام count()

في المشاريع الواقعية، غالباً تحتاج معرفة عدد العناصر قبل الطباعة أو قبل تنفيذ منطق معيّن:

<?php
$products = ["Laptop", "Mouse", "Keyboard", "Monitor"];
echo count($products); // 4
?>

دالة count() أساسية جداً عند التعامل مع Arrays في PHP.

طباعة كل العناصر باستخدام foreach

لنكمل قصة المتجر: لديك قائمة منتجات وتريد عرضها كلها للمستخدم. هنا foreach هي الخيار الأسرع والأوضح.

<?php
$products = ["Laptop", "Mouse", "Keyboard"];

foreach ($products as $product) {
    echo "المنتج: $product <br>";
}
?>

ما يظهر في المتصفح:

المنتج: Laptop
المنتج: Mouse
المنتج: Keyboard

for أم foreach في المصفوفات المفهرسة؟

المعيار for foreach
عند الحاجة إلى رقم الفهرس مناسب جداً أقل شيوعاً
عند طباعة كل العناصر فقط ممكن لكن أطول كتابة أفضل وأبسط
سهولة القراءة للمبتدئين متوسطة عالية
تنبيه مهم: إذا حاولت الوصول إلى فهرس غير موجود مثل $products[10] ستواجه تحذيراً. تأكد دائماً من حدود المصفوفة.

أخطاء شائعة يقع فيها المبتدئون

  • البدء من 1 بدل 0: وهذا يسبب تجاهل أول عنصر.
  • تجاوز الحدود: طلب فهرس أكبر من عدد العناصر.
  • نسيان count(): خاصة عند استخدام for.
  • التسمية غير الواضحة: اختيار أسماء عامة مثل $a بدل $products.

تمرين تطبيقي سريع

  1. أنشئ مصفوفة باسم $topCourses تحتوي على 5 دورات.
  2. اطبع أول دورة وآخر دورة.
  3. اعرض عدد الدورات باستخدام count().
  4. استخدم foreach لطباعة كل دورة في سطر مستقل.
هدف التمرين: تحويل الفكرة من "أنا فهمت الدرس" إلى "أنا أستطيع كتابة كود فعلي بالمصفوفات المفهرسة في PHP".

الأسئلة الشائعة — FAQ

ما هي المصفوفة المفهرسة في PHP؟

هي مصفوفة تُخزن عناصرها بفهارس رقمية تلقائية تبدأ من 0.

لماذا يبدأ الفهرس من 0؟

لأن PHP تعتمد نظام الفهرسة الصفرية مثل أغلب لغات البرمجة.

كيف أحسب عدد العناصر؟

استخدم count($array) للحصول على عدد العناصر مباشرة.

متى أستخدم for ومتى foreach؟

استخدم foreach للطباعة السريعة والواضحة، وfor عندما تحتاج التعامل مع الفهرس نفسه.

ممتاز! الآن أصبحت قادراً على استخدام المصفوفات المفهرسة في PHP في سيناريو حقيقي، من التخزين حتى العرض. في الدرس القادم سننتقل إلى المصفوفات الترابطية (Associative Arrays) لفهم التعامل مع البيانات عبر المفاتيح النصية.
المحرر الذكي

اكتب الكود وشاهد النتيجة فوراً

جرب الآن مجاناً
قناة ديف عربي

تابع أحدث الدروس والتحديثات مباشرة على واتساب

انضم الآن