PHP如何随机排列数组Array并随机取其中一个元素

百度已收录   阅读次数: 40
2021-09-0612:35:00 发表评论
摘要

伯衡君在开发网站的过程中,时常会遇到这样一个问题,就是要在指定数组Array中随机排列这组数据,并且要从中随机取值,那么问题来了,该如何处理这种问题呢,伯衡君就以PHP这门编程语言为例,介绍如何处理这样的问题好了,于是就有了这篇文章……

PHP如何随机排列数组Array并随机取其中一个元素

开篇寄语

伯衡君在开发网站的过程中,时常会遇到这样一个问题,就是要在指定数组Array中随机排列这组数据,并且要从中随机取值,那么问题来了,该如何处理这种问题呢,伯衡君就以PHP这门编程语言为例,介绍如何处理这样的问题好了,于是就有了这篇文章。

其他编程语言处理

内容详情

PHP已经构建好了一个函数,直接引用就可以随机排序Array,试举例如下:

<?php
$my_array = array("red","green","blue","yellow","purple");

shuffle($my_array);
print_r($my_array);
?>

//Array ( [0] => yellow [1] => purple [2] => red [3] => blue [4] => green )

如果是带有key和value的Array,则可以使用下面的方法:

function shuffle_assoc($list) { 
  if (!is_array($list)) return $list; 

  $keys = array_keys($list); 
  shuffle($keys); 
  $random = array(); 
  foreach ($keys as $key) { 
    $random[$key] = $list[$key]; 
  }
  return $random; 
} 

接下来是从数组取随机数,这就比较简单了,代码如下:

echo $my_array[array_rand($my_array)];

总结

总之,处理问题的时候,就要将之分解为一步步可以执行的操作,将困难问题简单化,这些问题就能迎刃而解了。

分享至:
  • 我的微信
  • 微信扫一扫加好友
  • weinxin
  • 我的微信公众号
  • 扫描关注公众号
  • weinxin
  • A+
所属分类:PHP

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: