推荐参考教程:《PHP教程》
对于PHP学习者来说,提到打乱数组,可能第一时间就想到shuffle函数。但是如何解决打乱关联数组并且保留键值对的问题可能就存在一定难度。
下面我们就结合具体的代码示例,给大家介绍php打乱关联数组并保持键值对的方法。
具体解决代码示例如下:
<?php function shuffle_assoc($my_array) { $keys = array_keys($my_array); shuffle($keys); foreach($keys as $key) { $new[$key] = $my_array[$key]; } $my_array = $new; return $my_array; } $colors = array("color1"=>"Red", "color2"=>"Green", "color3"=>"Yellow"); echo '<pre>'; print_r(shuffle_assoc($colors));
效果如下图所示:
如图,当我们每刷新一次就会打乱一次,并且原先的键值对是保持不变的。
注:
1、array_keys() 函数返回包含数组中所有键名的一个新数组。
语法:
array_keys(array,value,strict)
如果提供了第二个参数,则只返回键值为该值的键名。如果 strict 参数指定为 true,则 PHP 会使用全等比较 (===) 来严格检查键值的数据类型。
2、shuffle() 函数把数组中的元素按随机顺序重新排列。该函数为数组中的元素分配新的键名。已有键名将被删除。
本篇文章就是关于PHP打乱关联数组的方法介绍,也是非常简单易懂的,希望对需要的朋友有所帮助!
以上就是php如何打乱关联数组的详细内容,更多请关注php中文网其它相关文章!
……