شرح صفوف ومحتوى الفقرة
تقتطع الدالة array_slice($array, $offset, $length, $preserveKeys) نافذة متجاورة من العناصر في مصفوفة جديدة دون أي تعديل على المصفوفة الأصلية.
- يبدأ المعامل الموجب
$offsetالعد من البداية (من الصفر)، بينما يبدأ السالب من النهاية (مثل-2للبدء من آخر عنصرين). - يُوقف الطول السالب
$lengthالاقتطاع قبل نهاية المصفوفة بعدد العناصر المحدد. - مرر
trueكمعامل رابع ($preserveKeys) لمنع PHP من تصفير المفاتيح الرقمية في الشريحة المستخرجة.
افتراضياً تعيد array_slice() ترقيم المفاتيح الرقمية إلى 0, 1، بينما تمرير true في المعامل الرابع يحافظ على المفاتيح الأصلية 20, 30.
PHP
<?php
$scores = [10 => 88, 20 => 92, 30 => 95, 40 => 99];
$page = array_slice($scores, 1, 2);
$kept = array_slice($scores, 1, 2, true);
$lastTwo = array_slice($scores, -2);
echo "Reset keys: " . implode(",", array_keys($page)) . "\n";
echo "Kept keys : " . implode(",", array_keys($kept)) . "\n";