Alex Rivera | Logout

PHP get the last 3 elements of an associative array while preserving the keys?

Asked 2011-03-29T06:52:32.950
79

I have an array:

[13] => Array
        (
            [0] => joe
            [1] => 0

    [14] => Array
        (
            [0] => bob
            [1] => 0
        )

    [15] => Array
        (
            [0] => sue
            [1] => 0
        )

    [16] => Array
        (
            [0] => john
            [1] => 0
        )

    [17] => Array
        (
            [0] => harry
            [1] => 0
        )

    [18] => Array
        (
            [0] => larry
            [1] => 0
        )

How can I get the last 3 elements while preserving the keys? (the number of elements in the array may vary, so I cannot simply slice after the 2nd element)

So the output would be:

  [16] => Array
        (
            [0] => john
            [1] => 0
        )

    [17] => Array
        (
            [0] => harry
            [1] => 0
        )

    [18] => Array
        (
            [0] => larry
            [1] => 0
        )
Edit
Report

1 Answer

-4

You can use array_slice():

<?php
    // -3 = start from the end
    // true = preserve_keys
    $result = array_slice($array, 0, -3, true); 
?>
answered 2011-03-29T06:56:30.920

Your Answer