2015-04-20 15 views
10

Chcę uzyskać wartość KEY skojarzonej tablicy PHP w określonym wpisie. W szczególności wiem, że klucz, którego potrzebuję, jest kluczem do drugiego wpisu w tablicy.Zdobądź n-ty klucz asocjacyjnej tablicy php.

Przykład:

$array = array('customer' => 'Joe', 'phone' => '555-555-5555'); 

Co buduję jest super dynamiczne, więc nie wiem, druga pozycja będzie „telefon”. Czy istnieje łatwy sposób, aby go złapać?

W skrócie, (wiem, że to nie działa, ale ...) szukam czegoś funkcjonalnym odpowiednikiem: key($array[1]);

+0

To bardzo niezwykłe wymóg dotyczący ** ** tablicy asocjacyjnej. – Devon

+0

Pytanie wyświetlane jako duplikat http://stackoverflow.com/questions/4769148/accessing-an-associative-array-by-integer-index-inphph to nie to samo. Chce ustawić wartość na podstawie indeksu, muszę odwołać się do wartości klucza na podstawie indeksu. – jtubre

Odpowiedz

17

array_keys produkuje liczbową tablicę kluczy tablicy za.

$keys = array_keys($array); 
$key = $keys[1]; 

Jeśli używasz PHP 5.4 lub nowszej, uważam, że można po prostu zrobić:

$key = array_keys($array)[1]; 
+1

Dzięki. Zwłaszcza dla drugiej linii. Nie wiedział o tym skrócie. To działa, ale niestety, moje sprawdzanie błędów DW CS5.5 go nie lubi. – jtubre

Powiązane problemy