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

Functional Array Pipeline Comparison جدول مقارنة دوال تحويل وتصفية المصفوفات

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

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

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

يتيح تسلسل دوال المصفوفات التصريحية بناء خطوط معالجة بيانات موجزة وموثوقة تستخرج وتحول وتصفي وتلخص البيانات في بضعة أسطر.

  • استخرج الأعمدة المطلوبة من السجلات المتداخلة أولاً عبر array_column().
  • حوّل القيم ونظفها عبر array_map()، ثم احذف المدخلات الفارغة عبر array_filter().
  • احسب الإجماليات النهائية أو مرات التكرار باستخدام array_sum() أو count() أو array_count_values().

يستخرج خط المعالجة عمود "coupon"، ويهذب النصوص ويحولها لأحرف كبيرة، ثم يحذف النص الفارغ ويحسب عدد مرات استخدام الكوبون "SAVE10".

الدالةالمدخلاتالمخرجاتحالة الاستخدام الأساسية
array_column($rows, $col, $idx)مصفوفة ثنائية من السجلاتمصفوفة أحادية أو فهرس بحثاستخراج عمود محدد أو فهرسة السجلات بالمعرف
array_map($callback, $arr)دالة تحويل + مصفوفةمصفوفة جديدة محوَّلةتوحيد وتنسيق النصوص أو الأرقام لكل العناصر
array_filter($arr)مصفوفةمصفوفة مصفاة مع حفظ المفاتيحاستبعاد القيم الفارغة أو غير المطابقة للشرط
array_sum($arr)مصفوفة رقميةint | floatحساب المجموع الكلي للأرقام
array_count_values($arr)مصفوفة نصوص أو أعدادمصفوفة ترابطية لعدد التكراراتإحصاء عدد مرات ظهور كل قيمة
PHP
<?php
$orders = [
    ["coupon" => " save10 ", "amount" => 80],
    ["coupon" => "",         "amount" => 120],
    ["coupon" => "SAVE10",   "amount" => 100],
];

$coupons = array_filter(array_map("strtoupper", array_map("trim", array_column($orders, "coupon"))));
$usage   = array_count_values($coupons);

echo "Total Sales: $" . array_sum(array_column($orders, "amount")) . "\n";
echo "SAVE10 used: " . $usage["SAVE10"] . " times\n";
خلاصة المعرفة ومحطة الانتقال

ملخص الدرس

حصاد الدرس

مراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي

ماذا تعلّمت في هذا الدرس؟

يتيح تسلسل دوال المصفوفات التصريحية بناء خطوط معالجة بيانات موجزة وموثوقة تستخرج وتحول وتصفي وتلخص البيانات في بضعة أسطر. استخرج الأعمدة المطلوبة من السجلات المتداخلة أولاً عبر array_column(). حوّل القيم ونظفها عبر array_map()، ثم احذف المدخلات الفارغة عبر array_filter(). احسب الإجماليات النهائية أو مرات التكرار باستخدام array_sum() أو count() أو array_count_values().