PHP Conference Japan 2024

Ds\Map::slice

(PECL ds >= 1.0.0)

Ds\Map::slice返回由起始索引和长度定义的地图子集

描述

public Ds\Map::slice(int $index, int $length = ?): Ds\Map

返回由起始indexlength定义的地图子集。

参数

index

范围起始的索引。

如果为正数,则范围将从地图中的该索引开始。如果为负数,则范围将从末尾开始该距离。

length

如果给出长度并且为正数,则结果地图最多将包含那么多对。如果给出长度并且为负数,则范围将停止地图末尾的那么多对。如果长度导致溢出,则只包含地图末尾之前的对。如果没有提供长度,则结果地图将包含索引和地图末尾之间的所有对。

返回值

由起始索引和长度定义的地图子集。

示例

示例 #1 Ds\Map::slice() 示例

<?php
$map
= new \Ds\Map(["a" => 1, "b" => 2, "c" => 3, "d" => 4, "e" => 5]);

// 从2开始切片
print_r($map->slice(2)->toArray());

// 从1开始切片,长度为3
print_r($map->slice(1, 3)->toArray());

// 从1开始切片
print_r($map->slice(1)->toArray());

// 从末尾的2开始切片
print_r($map->slice(-2)->toArray());

// 从1到末尾的1切片
print_r($map->slice(1, -1)->toArray());
?>

以上示例的输出类似于

Array
(
    [c] => 3
    [d] => 4
    [e] => 5
)
Array
(
    [b] => 2
    [c] => 3
    [d] => 4
)
Array
(
    [b] => 2
    [c] => 3
    [d] => 4
    [e] => 5
)
Array
(
    [d] => 4
    [e] => 5
)
Array
(
    [b] => 2
    [c] => 3
    [d] => 4
)
添加注释

用户贡献笔记

此页面没有用户贡献的笔记。
To Top