php 的 foreach 如何决定以字符串为键的数组的迭代顺序


How does php's foreach decides the order of iteration, for an array with strings as keys?

Being

$array = ["string1"=>1,"astring"=>2,"dstring"=>3]
foreach($array as $key=>$value){
   echo $key;
}

按键将以什么顺序打印,为什么?php的foreach如何决定顺序?

它们将按照它们在数组中的相同顺序进行迭代。最有可能在广告顺序中(如果使用了 array_push/array_merge 或 [] 运算符)。这也适用于字符串以外的键。