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

In-Place Mutation with array_splice الحذف والاستبدال الموضعي داخل الأصل عبر array_splice

تحكم في أطراف المصفوفة عبر array_push وarray_pop وarray_shift وarray_unshift، واقتطع أو استبدل الشرائح بـ array_slice وarray_splice.
1 صفوف تعليمية
PHP
0 مشاهدة

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

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

تعدّل الدالة array_splice(&$array, $offset, $length, $replacement) المصفوفة الأصلية مباشرة بالمرجع؛ فتحذف أو تستبدل أو تدرج عناصر في أي موضع وترجع مصفوفة بالعناصر المحذوفة.

  • لحذف عناصر مع إعادة ترقيم المصفوفة دون ترك فجوات، استدعِ array_splice($arr, $offset, $count).
  • لإدراج عناصر جديدة في الوسط دون حذف أي عنصر، مرر 0 للطول: array_splice($arr, $offset, 0, $newItems).
  • على عكس array_slice()، فإن القيمة المرجعة من array_splice() هي العناصر المحذوفة، بينما تتحدث $array نفسها في مكانها.

بدءاً من الفهرس 2، تحذف array_splice() عنصراً واحداً ("Old Ad") وتحقن عنصرين بديلين مباشرة داخل $playlist.

PHP
<?php
$playlist = ["Intro", "Track 1", "Old Ad", "Track 2"];

$removed = array_splice($playlist, 2, 1, ["Sponsor Spot", "Interlude"]);

echo "Removed : " . implode(", ", $removed) . "\n";
echo "Updated : " . implode(" | ", $playlist) . "\n";