Nasıl bir dizinin son anahtarı almak basit bir şekilde yapmak?
Çözeltisi bir arada kullanmak olacaktır end and key (quoting),
end() son elemanına dizi 'iç ilerletir, ve değerini döndürür.key() geçerli dizi konumun dizin öğesi döndürür.Yani, bu gibi bir kod kısmı hile yapmak gerekir:
$array = array(
'first' => 123,
'second' => 456,
'last' => 789,
);
end($array); // move the internal pointer to the end of the array
$key = key($array); // fetches the key of the element pointed to by the internal pointer
var_dump($key);
Çıktısı:
string 'last' (length=4)
benim dizinin son öğenin, yani anahtar.
end() kolay gibi görünüyor olsa da, hızlı değil.
Daha hızlı ve daha güçlü bir alternatif array_slice() a>
$last_key = key( array_slice( $array, -1, 1, TRUE ) );
Bu hızlı ya da olacak olup olmadığını bilmiyorum, ama bunu bu şekilde yapmak daha kolay gibi görünüyor, ve sonuna kadar bir işlevi geçen () tarafından değil hatayı önlemek ...
Sadece için gerekirse o tanımsız, sonra kod bir kez daha hat yazmak için bir değişken ... değil büyük bir anlaşma gerekli.
$array = array(
'first' => 123,
'second' => 456,
'last' => 789,
);
$keys = array_keys($array);
$last = end($keys);
array_pop ve array_keys fonksiyonunu aşağıdaki gibi kullanmayı deneyin:
<?php
$array = array(
'one' => 1,
'two' => 2,
'three' => 3
);
echo array_pop(array_keys($array)); // prints three
?>