您好,欢迎访问一九零五行业门户网

PHP函数shuffle()取数组若干个随机元素的方法分析,shuffle数组_PHP教程

php函数shuffle()取数组若干个随机元素的方法分析,shuffle数组本文实例讲述了php函数shuffle()取数组若干个随机元素的方法。分享给大家供大家参考,具体如下:
有时候我们需要取数组中若干个随机元素(比如做随机推荐功能),那么php要如何实现呢?一个比较简单的解决方法是用php自带的shuffle()函数。下面举一个简单的例子:
$data[] = array( name => 帮客之家, rank => 40);$data[] = array( name => 博客园, rank => 50);$data[] = array( name => csdn, rank => 60);$data[] = array( name => iteye, rank => 50);shuffle($data);$i = 0;foreach($data as $key =>$value ){ if($i < 2) { echo $data[$key]['name'].'
'; } $i++;}
shuffle()
shuffle() 函数把数组中的元素按随机顺序重新排列。若成功,则返回 true,否则返回 false。本函数为数组中的单元赋予新的键名,这将删除原有的键名而不仅是重新排序。
如果传入的是关联数组,你会发现关联数组的键名将丢失。顺便这里说一下解决方法:
// 打乱关联数组的排序function shuffle_assoc($array){ $randomized_keys = array_rand($array, count($array)); foreach($randomized_keys as $current_key) { $output[$current_key] = $array[$current_key]; } return $output;}
另外,php还提供了从数组中随机抽取值的函数:array_rand(),其调用格式如下:array_rand(数组,抽取元素的个数); 当然要实现对二维数组的支持还需要封装一下才能使用。但前面的程序就很好支持二维数组。
更多关于php相关内容感兴趣的读者可查看本站专题:《php运算与运算符用法总结》、《php网络编程技巧总结》、《php基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家php程序设计有所帮助。
您可能感兴趣的文章:php中shuffle数组值随便排序函数用法javascript中实现php的打乱数组函数shuffle实例php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍php数组函数array_multisort()用法实例分析php常见数组函数用法小结php数组函数array_key_exists()小结php中使用array函数新建一个数组php 利用array_slice函数获取随机数组或前几条数据php使用array_search函数实现数组查找的方法php数组和explode函数示例总结php使用in_array函数检查数组中是否存在某个值php数组相关函数汇总php使用gettimeofday函数返回当前时间并存放在关联数组里php访问数组最后一个元素的函数end()用法
http://www.bkjia.com/phpjc/1117037.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/1117037.htmltecharticlephp函数shuffle()取数组若干个随机元素的方法分析,shuffle数组 本文实例讲述了php函数shuffle()取数组若干个随机元素的方法。分享给大家供大...
其它类似信息

推荐信息