Se non lo fai sapere abbastanza sull'array (non sei sicuro se la prima chiave sia foo o bar) quindi l'array potrebbe essere vuoto.
Quindi sarebbe meglio controllare, soprattutto se c'è la possibilità che il valore restituito potrebbe essere il FALSE booleano:
$value = empty($arr) ? $default : reset($arr);
Il codice precedente utilizza reset
e così ha effetti collaterali (azzera il puntatore interno dell'array), quindi si potrebbe preferire utilizzare array_slice
per accedere rapidamente a una copia del primo elemento della matrice:
$value = $default;
foreach(array_slice($arr, 0, 1) as $value);
Supponendo che si desidera ottenere sia la chiave e il valore separatamente, è necessario aggiungere il quarto parametro per array_slice
:
foreach(array_slice($arr, 0, 1, true) as $key => $value);
Per ottenere il primo elemento come una coppia (key => value
):
$item = array_slice($arr, 0, 1, true);
modifica semplice per ottenere l'ultimo elemento, chiave e il valore separatamente:
0.123.foreach(array_slice($arr, -1, 1, true) as $key => $value);
* (riferimento) * [Array] (http://de2.php.net/manual/en/language.types.array.php) e [Funzioni array] (http://php.net/manual /en/ref.array.php) – Gordon