انتقل إلى محتوى الدرس

Extracting Columns with array_column استخراج الأعمدة وإعادة الفهرسة بـ array_column

حوّل وصفِّ واجمع بيانات المصفوفات باحترافية في PHP 8.4 باستخدام array_map وarray_filter وarray_reduce وarray_column وarray_find.
1 صفوف تعليمية
PHP
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

تستخرج الدالة array_column($records, $columnKey, $indexKey) عموداً واحداً من مصفوفة السجلات ثنائية الأبعاد، أو تعيد فهرسة السجلات بمفتاح فريد مثل "id".

  • مرر اسم العمود في المعامل الثاني للحصول على قائمة مسطحة بالقيم (مثل array_column($users, "email")).
  • مرر المعامل الثالث ($indexKey) لبناء قاموس ترابطي مفهرس بقيمة ذلك العمود (مثل [101 => "[email protected]"]).
  • مرر null في المعامل الثاني مع تحديد $indexKey لفهرسة الصفوف الكاملة بمعرفها الفريد.

تستخرج الاستدعاءة الأولى قائمة بأسماء المنتجات، بينما تربط الثانية كل معرف "id" بسعره "price" مباشرة.

مخطط توضيحي: محاكي خطوط معالجة المصفوفات (الاستخراج والتصفية والتجميع) في PHP
PHP
<?php
$products = [
    ["id" => 10, "name" => "Router", "price" => 120],
    ["id" => 20, "name" => "Switch", "price" => 85],
];

$names     = array_column($products, "name");
$priceById = array_column($products, "price", "id");

echo "Names: " . implode(", ", $names) . "\n";
echo "Product #20 price: $" . $priceById[20] . "\n";