PHP: Bir dizinin son öğeyi almak için en hızlı ve en kolay yolu nedir?

6 Cevap php

Dizi, ilişkisel dizi veya çok-boyutlu bir dizi endeksli olmadığı bir dizinin son öğeyi almak için en hızlı ve en kolay yolu nedir?

6 Cevap

$myArray = array( 5, 4, 3, 2, 1 );

echo end($myArray);

baskılar "1"

array_pop()

Bu dizinin ucundan elemanı kaldırır. Eğer inceliğini dizisi tutmanız gerekiyorsa, bu kullanmak ve daha sonra dizinin sonuna geri değer eklemek olabilir. $array[] = $popped_val

Bu deneyin:

$arrayname[count(arrayname)-1]

I array_pop belgelerde söyleyebilirim: array_pop

array_pop - Dizinin sonundaki elemanı Pop

Büyük yanıtlar sürü. Eğer bir kez daha bu daha yapıyoruz eğer bir işlevi yazma düşünün:

function array_top(&$array) {
    $top = end($array);
    reset($array); // Optional
    return $top;
}

Alternatif olarak, öfke bağlı olarak:

function array_top(&$array) {
    $top = array_pop($array);
    $array[] = $top; // Push top item back on top
    return $top;
}

($array[] = ... array_push(), cf tercih edilir. the docs.)

Ilişkilendirilebilir bir dizi için:

$a= array('hi'=> 'there', 'ok'=> 'then');
list($k, $v) = array(end(array_keys($a)), end($a));
var_dump($k);
var_dump($v);

Düzenleme: Ayrıca sayısal dizin diziler için çalışması gerekir