valor obtener indice index from elemento buscar array_search array php arrays multidimensional-array key

obtener - php array key value



PHP: Obtener la clave de la matriz? (8)

Otra forma de usar la clave ($ array) en un bucle foreach es usar next ($ array) al final del bucle, solo asegúrese de que cada iteración invoque la función next () (en caso de que tenga una bifurcación compleja dentro del bucle)

Estoy seguro de que esta es una función súper fácil e integrada en PHP, pero aún no la he visto.

Esto es lo que estoy haciendo por el momento:

foreach($array as $key => $value) { echo $key; // Would output "subkey" in the example array print_r($value); }

¿Podría hacer algo como lo siguiente y evitar así escribir "$ key => $ value" en cada ciclo foreach? (psuedocode)

foreach($array as $subarray) { echo arrayKey($subarray); // Will output the same as "echo $key" in the former example ("subkey" print_r($value); }

¡Gracias!

La matriz:

Array ( [subKey] => Array ( [value] => myvalue ) )


Prueba esto

foreach(array_keys($array) as $nmkey) { echo $nmkey; }


Puedes usar la key() :

<?php $array = array( "one" => 1, "two" => 2, "three" => 3, "four" => 4 ); while($element = current($array)) { echo key($array)."/n"; next($array); } ?>


Si desea estar en un bucle foreach , entonces foreach($array as $key => $value) es definitivamente el enfoque recomendado. Aproveche la sintaxis simple cuando un idioma lo ofrece.


Si se trata de un ciclo foreach como lo ha descrito en la pregunta, usar $key => $value es rápido y eficiente.


Usa la función array_search .

Ejemplo de php.net

$array = array(0 => ''blue'', 1 => ''red'', 2 => ''green'', 3 => ''red''); $key = array_search(''green'', $array); // $key = 2; $key = array_search(''red'', $array); // $key = 1;


$array = array(0 => 100, "color" => "red"); print_r(array_keys($array));


$foo = array(''a'' => ''apple'', ''b'' => ''ball'', ''c'' => ''coke''); foreach($foo as $key => $item) { echo $item.'' is begin with (''.$key.'')''; }