PHP dizide sadece elemanın anahtarı alma

5 Cevap php

Birleşmeli dizinin anahtar dinamik olarak oluşturulur. Ben nasıl böyle bir dizinin "Anahtar" alabilirim?

$arr = array ('dynamic_key' => 'Value');

Ben Böyle bir foreach döngü aracılığıyla erişmek mümkün olduğunun farkındayım:

foreach ($arr as $key => $val) echo "Key value is $key";

Ancak, bu dizi sadece bir anahtar var ve bir foreach döngüsü kaçınmak istiyorum biliyorum. Herhangi başka bir şekilde bu elemanın değerine erişmek mümkün mü? Veya anahtar adını alır?

5 Cevap

Using key() is fine.
If you're going to fetch the value anyway you can also use each() and list().

$arr = array ('dynamic_key' => 'Value');
list($key, $value) = each($arr);
echo $key, ' -> ', $value, "\n";

baskılar dynamic_key -> Value

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

Veya değer için array_values() kullanın.

Sen (değerini almak için array_values ile) array_shift(array_keys($arr)) kullanabilirsiniz, ama yine de içten bir döngü yapar.

Ne dizini 'keys'e hakkında (?)

Ama bir dizi çıkmıyor ...

Eğer giriş değeri ve anahtarı almak istiyorum demek istiyorsun?

array_search ($value, $array) 

Returns the key for needle if it is found in the array, FALSE otherwise.

If needle is found in haystack more than once, the first matching key is returned. To return the keys for all matching values, use array_keys() with the optional search_value parameter instead.

more details : http://php.net/manual/en/function.array-search.php