How to access N-th element of an array in PHP

后端 未结 3 902
误落风尘
误落风尘 2021-02-07 11:36

I\'m embarrassed to ask this and it\'s most likely a duplicate, but my google results are coming up short (im searching incorrectly I guess) and such a basic question is infuria

3条回答
  •  终归单人心
    2021-02-07 12:25

    If your keys are numeric, then it works exactly the same:

    $arr = ['one', 'two', 'three']; // equivalent to [0 => 'one', 1 => 'two', 2 => 'three']
    echo $arr[1]; // two
    

    If your keys are not numeric or not continuously numeric, it gets a bit trickier:

    $arr = ['one', 'foo' => 'bar', 42 => 'baz'];
    

    If you know the key you want:

    echo $arr['foo']; // bar
    

    However, if you only know the offset, you could try this:

    $keys = array_keys($arr);
    echo $arr[$keys[1]];
    

    Or numerically reindex the array:

    $values = array_values($arr);
    echo $values[1];
    

    Or slice it:

    echo current(array_slice($arr, 1, 1));
    

    Most likely you want to be looping through the array anyway though, that's typically what you do with arrays of unknown content. If the content is unknown, then it seems odd that you're interested in one particular offset anyway.

    foreach ($arr as $key => $value) {
        echo "$key: $value", PHP_EOL;
    }
    

提交回复
热议问题