当前位置: 首页 > 编程笔记 >

php对数组内元素进行随机调换的方法

尉迟明贤
2023-03-14
本文向大家介绍php对数组内元素进行随机调换的方法,包括了php对数组内元素进行随机调换的方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了php对数组内元素进行随机调换的方法。分享给大家供大家参考。具体分析如下:

这是一个自定义的php数组元素随机调换的函数,php已经有一个内置的同样功能的函数shuffle($Array),这个代码权当参考

// I noticed that there is already a built-in function that
// does the same - so don't use mine ;-)
//
// --> shuffle($Array);
//
// http://de2.php.net/manual/de/function.shuffle.php
//
function RandomizeArray($array){
  // error check:
  $array = (!is_array($array)) ? array($array) : $array;
  $a = array();
  $max = count($array) + 10;
  while(count($array) > 0){    
    $e = array_shift($array);
    $r = rand(0, $max);
    // find a empty key:
    while (isset($a[$r])){
      $r = rand(0, $max);
    }    
    $a[$r] = $e;
  }
  ksort($a);
  $a = array_values($a);
  return $a;
}

使用范例:

/*
** Example:
*/
$test_array = array('why','dont','visit','www','jonas','john','de',':-)');
print implode(", ", $test_array);
print "\n";
print implode(", ", RandomizeArray($test_array));
/*
Example output:
why, dont, visit, www, jonas, john, de, :-)
www, de, jonas, john, visit, why, :-), dont
*/

希望本文所述对大家的php程序设计有所帮助。

 类似资料:
  • 本文向大家介绍PHP函数shuffle()取数组若干个随机元素的方法分析,包括了PHP函数shuffle()取数组若干个随机元素的方法分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP函数shuffle()取数组若干个随机元素的方法。分享给大家供大家参考,具体如下: 有时候我们需要取数组中若干个随机元素(比如做随机推荐功能),那么PHP要如何实现呢?一个比较简单的解决方法是用PHP

  • 有没有一种方法可以让你使用打印给定数组中的元素? 所以输出将是 或者 或

  • 主要内容:算法总结及实现,优化算法在实际开发中,有很多场景需要我们将数组元素按照从大到小(或者从小到大)的顺序排列,这样在查阅数据时会更加直观,例如: 一个保存了班级学号的数组,排序后更容易分区好学生和坏学生; 一个保存了商品单价的数组,排序后更容易看出它们的性价比。 对数组元素进行排序的方法有很多种,比如冒泡排序、归并排序、选择排序、插入排序、快速排序等,其中最经典最需要掌握的是「冒泡排序」。 以从小到大排序为例,冒泡排序的整体

  • 本文向大家介绍php从数组中随机选择若干不重复元素的方法,包括了php从数组中随机选择若干不重复元素的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php从数组中随机选择若干不重复元素的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的php程序设计有所帮助。

  • 本文向大家介绍JS从数组中随机取出几个数组元素的方法,包括了JS从数组中随机取出几个数组元素的方法的使用技巧和注意事项,需要的朋友参考一下 JS如何从一个数组中随机取出一个元素或者几个元素。 假如数组为 1.从数组items中随机取出一个元素 2.从前面的一篇随机数组中随机取几个元素 以上所述是小编给大家介绍的JS随机取出几个数组元素的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会

  • 问题内容: 我有一个字符串数组: 我从中得到随机元素: 现在我想获得当我按下按钮以获取随机水果时苹果所处的数字,例如当我按下randon按钮时,它给了我Banana ..并且还应该给我那个元素编号是 我得到了元素,但是获取元素编号有问题,所以请帮帮我 问题答案: 只需将生成的索引存储在变量中,然后使用此变量访问数组: PS我通常不喜欢每次随机化生成新对象-我更喜欢在程序中使用单个对象- 然后重新使