array_slice()
(PHP 4, PHP 5, PHP 7)
تستخرج الدالة array_slice()
قسمًامن المصفوفة.
الوصف
array array_slice ( array $array , int $offset [, int $length = NULL [, bool $preserve_keys = FALSE ]] )
تعيد الدالة array_slice()
مجموعة من العناصر المتتابعة من المصفوفة array
كما هو محدد بواسطة المعاملَيْن offset
وlength
.
المعاملات
array
المصفوفة المُدخلة.
offset
إذا كان معامل الإزاحة offset
غير سالب، فستبدأ إزاحة التتابع من بداية المصفوفة array
. أما إذا كان offset
سالبًا، فستبدأ إزاحة التتابع من نهاية المصفوفة array
.
length
إذا كان معامل الطول length
موجبًا، فسيكون عدد العناصر المتتابعة مساوٍ له. وإذا كانت المصفوفة أقصر من length
، فستُعيد عناصر المصفوفة المتوفرة فقط. وإذا كان length
سالبًا، فسيتوقف التتابع عند هذا العدد من العناصر تنازليًا من نهاية المصفوفة. أما إذا لم تُحدَّد قيمة هذا المعامل الاختياري فسيكون التتابع مكونًا من كل العناصر بدءًا من offset
وحتى نهاية المصفوفة array
.
preserve_keys
لاحظ أن الدالة array_slice()
ستعيد ترتيب وتعيين مؤشرات المصفوفة الرقمية افتراضيًا. لكن يمكننا تغيير هذا السلوك بضبط قيمة المعامل preserve_keys
إلى القيمة TRUE
.
القيم المعادة
تُعيد الدالة قسمًا من المصفوفة. وإذا كان معامل الإزاحة أكبر من حجم المصفوفة، فستعيد الدالة مصفوفة فارغة.
سجل التغييرات
الإصدار | الوصف |
---|---|
5.2 | تغيير القيمة الافتراضية لمعامل الطول length إلى القيمة NULL . يجعل اختيار معامل الطول length بالقيمة NULL الدالة تستخدم طول المصفوفة array بالكامل. قبل هذا الإصدار، كان اختيار length بالقيمة NULL يعني طولًا صفريًا (أي لن تعيد الدالة أي شيء).
|
5.0.2 | اضافة معامل preserve_keys الاختياري.
|
أمثلة
المثال 1: أمثلة على الدالة array_slice()
<?php
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 2); // تعيد "c", "d", و "e"
$output = array_slice($input, -2, 1); // تعيد "d"
$output = array_slice($input, 0, 3); // تعيد "a", "b", و "c"
/ / لاحظ الاختلافات في مفاتيح المصفوفة
print_r(array_slice($input, 2, -1));
print_r(array_slice($input, 2, -1, true));
?>
سوف تكون مُخرجات المثال أعلاه كالتالي:
Array
(
[0] => c
[1] => d
)
Array
(
[2] => c
[3] => d
)
انظر أيضًا
- الدالة
array_splice()
: إزالة جزء من المصفوفة واستبداله بشيء آخر. - الدالة
unset()
: إلغاء تعيين متغير معين. - الدالة
array_chunk()
: تقسيم مصفوفة إلى قطع.