valor una obtener multidimensional matriz manejo index hacer extraer datos como buscar array_search array 3x3 php arrays array-key

una - obtener el valor de un array php



Cómo obtener la posición de una clave dentro de una matriz (4)

Ok, entonces necesito agarrar la posición de ''blah'' dentro de esta matriz (la posición no siempre será la misma). Por ejemplo:

$array = ( ''a'' => $some_content, ''b'' => $more_content, ''c'' => array($content), ''blah'' => array($stuff), ''d'' => $info, ''e'' => $more_info, );

Por lo tanto, me gustaría poder devolver el número de ubicación de la clave ''blah'' dentro de la matriz. En este escenario, debería regresar 3. ¿Cómo puedo hacer esto rápidamente? Y sin afectar a la matriz $ array en absoluto.


Si sabes que existe la clave:

PHP 5.4 ( Demo ):

echo array_flip(array_keys($array))[''blah''];

PHP 5.3:

$keys = array_flip(array_keys($array)); echo $keys[''blah''];

Si no sabe que existe la clave, puede consultar con isset :

$keys = array_flip(array_keys($array)); echo isset($keys[''blah'']) ? $keys[''blah''] : ''not found'' ;

Esto es simplemente como array_search pero hace uso del mapa que ya existe dentro de cualquier array. No puedo decir si es realmente mejor que array_search , esto podría depender del escenario, así que solo otra alternativa.


Usuario array_search ( doc ). A saber, `$ index = array_search (''blah'', $ array)


$keys=array_keys($array); le dará una matriz que contiene las claves de $array

Entonces, array_search(''blah'', $keys); le dará el índice de blah en $keys y por lo tanto, $array


$i = array_search(''blah'', array_keys($array));