Cuando realizo un ciclo foreach sobre una matriz asociatve en php, el orden en que se realiza es el orden en que se define.¿El orden de una matriz asociativa está garantizado en PHP?
Por ejemplo:
$arr = array("z" => "z", "a" => "a", "b" => "b");
foreach($arr as $key => val)
print("$key: $val\n");
Salidas:
z: z
a: a
b: b
Considerando
$arr = array("a" => "a", "b" => "b", "z" => "z");
Salidas:
a: a
b: b
z: z
Entonces mi pregunta es: ¿este comportamiento se define en un nivel de especificación? ¿Puedo tener una certeza razonable de que este comportamiento no cambiará en versiones futuras de PHP?
+1 Una cotización vale más que mil palabras. ;) – Gumbo
¡Gracias! Por alguna razón, pasé por alto eso, probablemente cuando aún pensaba que no se aplicaba a las matrices asociativas. – Asuah