找回密码
 立即注册

QQ登录

只需一步,快速开始

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

php 从一个数组中随机的取出若干个不同的数实例

[复制链接]

2588

主题

2588

帖子

7694

积分

论坛元老

Rank: 8Rank: 8

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

            第一种算法,CSDN上别人的想法
$num = 0;
  $array = array(1, 2, 3, 4, 5, 6, 7, 8, 9);
  $arr = array();
  $g = 5;
  $tag = true;
  while ($tag) {
    $count = count($array);
    $t = rand(0, 1);
    if ($t == 1) {
      $arr[] = $array[$num];
      unset($array[$num]);
    }
    $num ++;
    if (count($arr) == $g) {
      $tag = false;
    }
    if ($num == $count) {
      $num = 0;  //循环
    }
  }
var_dump($arr);
第二种算法,自己想的。
可以在每次取出数据之后将该数据和最后没有获取的数据替换,然后再去没有取得的数据中随机获取值  
  function swap(&$a, &$b)
  {
    $temp = $b;
    $b = $a;
    $a = $temp;
  }
   
   
  $result = array();
  $src = array();
  for($i = 0 ; $i
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
            
            
您可能感兴趣的文章:
  • php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
  • php中通过数组进行高效随机抽取指定条记录的算法
  • php使用array_rand()函数从数组中随机选择一个或多个元素
  • php获取随机数组列表的方法
  • php生成不重复随机数、数组的4种方法分享
  • php对数组内元素进行随机调换的方法
  • php将字符串随机分割成不同长度数组的方法
  • php数组随机排序实现方法
  • php 利用array_slice函数获取随机数组或前几条数据
  • php 数组随机取值的简单实例
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

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

    本版积分规则

    用户反馈
    客户端