(PECL ds >= 1.0.0)
Ds\Set::slice — 傳回給定範圍的子集合
index
子集合開始的索引。
如果為正數,則集合將從集合中的該索引開始。如果為負數,則集合將從末尾開始算起的該距離處開始。
length
如果給定長度且為正數,則結果集合中最多包含這麼多個值。如果長度導致溢位,則只會包含到集合結尾的值。如果給定長度且為負數,則集合將從結尾停止這麼多個值。如果未提供長度,則結果集合將包含索引和集合結尾之間的所有值。
給定範圍的子集。
範例 #1 Ds\Set::slice() 範例
<?php
$set = new \Ds\Set(["a", "b", "c", "d", "e"]);
// 從索引 2 開始切片
print_r($set->slice(2));
// 從索引 1 開始切片,長度為 3
print_r($set->slice(1, 3));
// 從索引 1 開始切片
print_r($set->slice(1));
// 從倒數第 2 個開始切片
print_r($set->slice(-2));
// 從索引 1 切片到倒數第 1 個
print_r($set->slice(1, -1));
?>
上述範例的輸出結果類似如下
Ds\Set Object ( [0] => c [1] => d [2] => e ) Ds\Set Object ( [0] => b [1] => c [2] => d ) Ds\Set Object ( [0] => b [1] => c [2] => d [3] => e ) Ds\Set Object ( [0] => d [1] => e ) Ds\Set Object ( [0] => b [1] => c [2] => d )