Open In App

PHP Ds\Map slice() Function

Last Updated : 21 Aug, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

The Ds\Map::slice() function of PHP Ds\Map class is used to get a subset of the specified Map instance. The method returns the subset containing elements starting from a specific index till a specified length from the Map instance.

Syntax:

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

Parameter: This function accepts two parameters as described below:

  • $index: This parameter specifies the index from which the elements will be returned in the subset. This parameter can be positive as well as negative. If the $index is positive then the range is calculated from the front of the Map and if it is negative then the index is positioned from the end.
  • $length: This is an optional parameter. If the $length is not specified then the elements in the subset will be from the starting index till the end of the Map. If the length is specified then the returned subset will contain elements starting from $index in the Map upto the specified length. For example, if $index = 2 and $length = 4, then the subset will contain 4 elements starting from the element present at index 2 in the actual Map instance.

Return value: The method returns the subset containing elements starting from a specific index till a specified length from the Map instance.

Below programs illustrate the Ds\Map::slice() function:

Program 1:




<?php
// PHP program to illustrate slice() function
  
$map = new \Ds\Map([1 => 10, 2 => 20, 3 => 30,
                    4 => 40, 5 => 50, 6 => 60]);
  
// When index is positive and length is not 
// specified
print_r($map->slice(4));
  
// When index is negative and length is not 
// specified
print_r($map->slice(-4));
  
?>


Output:

Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 5
            [value] => 50
        )

    [1] => Ds\Pair Object
        (
            [key] => 6
            [value] => 60
        )

)
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 3
            [value] => 30
        )

    [1] => Ds\Pair Object
        (
            [key] => 4
            [value] => 40
        )

    [2] => Ds\Pair Object
        (
            [key] => 5
            [value] => 50
        )

    [3] => Ds\Pair Object
        (
            [key] => 6
            [value] => 60
        )

)

Program 2:




<?php
// PHP program to illustrate slice() function
  
$map = new \Ds\Map([1 => 10, 2 => 20, 3 => 30,
                    4 => 40, 5 => 50, 6 => 60]);
  
// When index is positive and length is  
// specified
print_r($map->slice(2, 2));
  
// When index is negative and length is 
// specified
print_r($map->slice(-2, 2));
  
?>


Output:

Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 3
            [value] => 30
        )

    [1] => Ds\Pair Object
        (
            [key] => 4
            [value] => 40
        )

)
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 5
            [value] => 50
        )

    [1] => Ds\Pair Object
        (
            [key] => 6
            [value] => 60
        )

)

Reference: http://php.net/manual/en/ds-map.slice.php



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads