找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1524|回复: 0
打印 上一主题 下一主题

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

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 05:46:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了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()和array_rand() 随机函数使用介绍
  • php中通过数组进行高效随机抽取指定条记录的算法
  • php使用array_rand()函数从数组中随机选择一个或多个元素
  • php获取随机数组列表的方法
  • php生成不重复随机数、数组的4种方法分享
  • php将字符串随机分割成不同长度数组的方法
  • php数组随机排序实现方法
  • php 利用array_slice函数获取随机数组或前几条数据
  • php 数组随机取值的简单实例
  • php 从一个数组中随机的取出若干个不同的数实例
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端