Tengo una matriz como la siguiente:
function example() {
/* some stuff here that pushes items with
dynamically created key strings into an array */
return array( // now lets pretend it returns the created array
'firstStringName' => $whatEver,
'secondStringName' => $somethingElse
);
}
$arr = example();
// now I know that $arr contains $arr['firstStringName'];
Necesito encontrar el índice de $arr['firstStringName']
para poder recorrer array_keys($arr)
y devolver la cadena de clave 'firstStringName'
por su índice. ¿Cómo puedo hacer eso?
Respuestas:
Si tiene un valor y desea encontrar la clave, use
array_search()
así:$key
ahora contendrá la clave para el valor'a'
(es decir,'first'
).fuente
array_filter()
se puede usar si necesita devolver todos los resultados coincidentes en lugar de solo el primero, ya que conserva las claves.devolverá el valor clave para el elemento de matriz actual
http://uk.php.net/manual/en/function.key.php
fuente
Si entiendo correctamente, ¿no puedes simplemente usar:
Ver manual PHP
fuente
Si el nombre es dinámico, entonces debes tener algo como
lo que significaría que $ key contiene el valor de la clave.
Puede usar
array_keys()
para obtener TODAS las claves de una matriz, por ejemplote daría
fuente
Sí, de hecho, php es uno de los pocos idiomas que ofrece este tipo de soporte.
fuente
si necesita devolver una matriz de elementos con el mismo valor, use la
array_keys()
funciónfuente
Aquí hay otra opción
fuente
use
array_keys()
para obtener una matriz de todas las claves únicas.Tenga en cuenta que
$arr
también se puede acceder a una matriz con teclas con nombre como su con índices numéricos, como$arr[0]
.http://php.net/manual/en/function.array-keys.php
fuente
puede usar la función clave de php para obtener el nombre clave:
como aquí: PHP: clave - Manual
fuente