الإضافة باستخدام 'array_unshift'
جزء من قسم المنطق وتدفق التنفيذ في رحلة PHP على Coddy. الدرس 12 من 68.
بينما تضيف الدالة array_push() عناصر إلى نهاية مصفوفة، تفعل الدالة array_unshift() العكس. فهي تضيف عنصرًا واحدًا أو أكثر إلى بداية مصفوفة. تعدّل هذه الدالة المصفوفة الأصلية مباشرةً وتُرجع الطول الجديد للمصفوفة.
إليك الصيغة الأساسية:
<?php
$tasks = ["buy groceries", "do laundry"];
array_unshift($tasks, "urgent meeting");
print_r($tasks); // Outputs: Array ( [0] => urgent meeting [1] => buy groceries [2] => do laundry )
?>لاحظ كيف يصبح العنصر الجديد هو الفهرس 0، وتنتقل جميع العناصر الموجودة إلى فهارس أعلى. تحدث إعادة الفهرسة هذه تلقائيًا: تعمل array_unshift() على تحديث جميع المفاتيح الرقمية للحفاظ على التسلسل الصحيح.
يمكنك أيضًا add عدة عناصر دفعة واحدة:
<?php
$priorities = ["medium task"];
array_unshift($priorities, "high priority", "critical task");
print_r($priorities); // المخرجات: Array ( [0] => high priority [1] => critical task [2] => medium task )
?>هذه الدالة مفيدة بشكل خاص عندما تحتاج إلى تحديد أولوية items في list، مثل إضافة urgent tasks إلى أعلى list للمهام، أو إدراج high-priority items في مقدمة طابور.
التحدي
سهلستتلقى مُدخلين: مصفوفة أولية من notifications بتنسيق JSON وإشعار urgent جديد لإضافته. اقرأ المُدخلين، وحوّل سلسلة JSON إلى مصفوفة، واستخدم array_unshift() لإضافة إشعار urgent إلى beginning المصفوفة، ثم اطبع المصفوفة final باستخدام print_r().
تنسيق الإدخال: سطران - يحتوي السطر الأول على مصفوفة JSON (مثال: ["meeting reminder","email received"])، ويحتوي السطر الثاني على إشعار urgent المراد إضافته
الإخراج المتوقع: المصفوفة بعد إضافة إشعار urgent في beginning، مع عرضها باستخدام print_r()
جرّب بنفسك
<?php
// Read the JSON array of notifications
$jsonInput = fgets(STDIN);
$notifications = (array)json_decode($jsonInput, true);
// Read the urgent notification to add
$urgentNotification = trim(fgets(STDIN));
// TODO: Write your code below to add the urgent notification to the beginning of the array
// إخراج المصفوفة النهائية
print_r($notifications);
?>يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المنطق وتدفق التنفيذ
1الدوال المتقدمة
الدوال المجهولةالـ Closures وكلمة 'use'دوال السهمدوال الـ Callbackاستخدام 'call_user_func'دوال المتغيراتالتمرير بالمرجعالدوال العوديةمراجعة: مزيج الدوال4المصفوفات متعددة الأبعاد
إنشاء مصفوفة ثنائية الأبعادالوصول إلى عناصر المصفوفة ثنائية الأبعادتعديل عناصر المصفوفة ثنائية الأبعادالتكرار باستخدام الحلقات المتداخلةالمصفوفات الترابطية ثنائية الأبعادمراجعة: تمرين الشبكة البسيطة2معالجة المصفوفات المتقدمة
الإضافة باستخدام 'array_push'الحذف باستخدام 'array_pop'الإضافة باستخدام 'array_unshift'الحذف باستخدام 'array_shift'دمج المصفوفات المفهرسةدمج المصفوفات الترابطيةالاستخراج باستخدام 'array_slice'القيم باستخدام 'in_array'المفاتيح باستخدام 'array_search'مراجعة: تمرين قائمة التشغيل3ترتيب المصفوفات
ترتيب المصفوفات المفهرسة تصاعدياًترتيب المصفوفات المفهرسة تنازلياًترتيب المصفوفات الترابطية حسب القيمةترتيب المصفوفات الترابطية حسب المفتاحالترتيب بالترتيب الطبيعيالترتيب المخصص باستخدام 'usort'مراجعة: ترتيب لوحة المتصدرينتدرّب بنفسك: مترجم PHP عبر الإنترنت