php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍


Posted in PHP onOctober 29, 2011

shuffle()定义和用法
shuffle() 函数把数组中的元素按随机顺序重新排列。

若成功,则返回 TRUE,否则返回 FALSE。

注释:本函数为数组中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。

注释:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函数给随机数发生器播种,现已被自动完成。

语法
shuffle(array) 参数 描述
array 必需。规定要使用的数组。

例子

<?php 
$my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse"); 
shuffle($my_array); print_r($my_array); 
?>

输出:

Array ( [0] => Cat [1] => Horse [2] => Dog )

array_rand()定义和用法
array_rand() 函数从数组中随机选出一个或多个元素,并返回。

第二个参数用来确定要选出几个元素。如果选出的元素不止一个,则返回包含随机键名的数组,否则返回该元素的键名。

注释:如果指定array_rand()函数抽取的索引个数大于1,那么不管抽取的是数字索引数组还是关联数组,都将取得原数组的key,并放在一个新的索引数组中。

注释:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函数给随机数发生器播种,现已被自动完成。

语法
array_rand(array,number) 参数 描述
array 必需。规定输入的数组参数。
number 可选。默认是 1。规定返回多少个随机的元素。

例子 1

<?php 
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse"); 
print_r(array_rand($a,1)); 
?>

输出:

b
例子 2
带有字符串键的数组:

<?php 
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse"); 
print_r(array_rand($a,2)); 
?>

输出:

Array ( [0] => c [1] => b )

PHP 相关文章推荐
使用PHP批量生成随机用户名
Jul 10 PHP
PHP下编码转换函数mb_convert_encoding与iconv的使用说明
Dec 16 PHP
php中配置文件操作 如config.php文件的读取修改等操作
Jul 07 PHP
PHP读取xml方法介绍
Jan 12 PHP
php生成html文件方法总结
Dec 01 PHP
php开发时容易忘记的一些技术细节
Feb 03 PHP
Laravel路由设定和子路由设定实例分析
Mar 30 PHP
PHP单例模式定义与使用实例详解
Feb 06 PHP
Yii2.0多文件上传实例说明
Jul 24 PHP
PHP利用Mysql锁解决高并发的方法
Sep 04 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
Oct 09 PHP
PHP cookie与session会话基本用法实例分析
Nov 18 PHP
让Json更懂中文(JSON_UNESCAPED_UNICODE)
Oct 27 #PHP
PHP实现异步调用方法研究与分享
Oct 27 #PHP
提示Trying to clone an uncloneable object of class Imagic的解决
Oct 27 #PHP
PHP 小心urldecode引发的SQL注入漏洞
Oct 27 #PHP
Session保存到数据库的php类分享
Oct 24 #PHP
php中批量修改文件后缀名的函数代码
Oct 23 #PHP
基于Snoopy的PHP近似完美获取网站编码的代码
Oct 23 #PHP
You might like
PHP把小数转成整数3种方法
2014/06/30 PHP
php实现生成验证码实例分享
2016/04/10 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
2016/09/01 PHP
PHP结合Ueditor并修改图片上传路径
2016/10/16 PHP
PHP获取数据库表中的数据插入新的表再原删除数据方法
2018/10/12 PHP
phpinfo的知识点总结
2019/10/10 PHP
基于jQuery图片平滑连续滚动插件
2009/04/27 Javascript
js 可拖动列表实现代码
2011/12/13 Javascript
用javascript模仿ie的自动完成类似自动完成功的表单
2012/12/12 Javascript
JavaScript常用脚本汇总(一)
2015/03/04 Javascript
javascript数组去重的方法汇总
2015/04/14 Javascript
JavaScript数组去重的两种方法推荐
2016/04/05 Javascript
第一次接触神奇的Bootstrap网格系统
2016/07/27 Javascript
如何快速上手Vuex
2017/02/14 Javascript
Vuejs 单文件组件实例详解
2018/02/09 Javascript
微信小程序引入模块中wxml、wxss、js的方法示例
2019/08/09 Javascript
js实现固定区域内的不重叠随机圆
2019/10/24 Javascript
ES6对象操作实例详解
2020/05/23 Javascript
[03:09]2014DOTA2国际邀请赛 赛场上的美丽风景线 中国Coser也爱DOTA2
2014/07/20 DOTA
python self,cls,decorator的理解
2009/07/13 Python
python函数局部变量用法实例分析
2015/08/04 Python
深入解析Python中函数的参数与作用域
2016/03/20 Python
Python的Flask框架中的Jinja2模板引擎学习教程
2016/06/30 Python
Python OpenCV处理图像之滤镜和图像运算
2018/07/10 Python
flask框架视图函数用法示例
2018/07/19 Python
Python 字符串换行的多种方式
2018/09/06 Python
Django项目创建到启动详解(最全最详细)
2019/09/07 Python
python求解汉诺塔游戏
2020/07/09 Python
CSS3中border-radius属性设定圆角的使用技巧
2016/05/10 HTML / CSS
高级电工工作职责
2013/11/21 职场文书
尽职尽责村干部自我鉴定
2014/01/23 职场文书
就业推荐表自我鉴定
2014/03/21 职场文书
摩登时代观后感
2015/06/03 职场文书
Promise面试题详解之控制并发
2021/05/14 面试题
matplotlib如何设置坐标轴刻度的个数及标签的方法总结
2021/06/11 Python
Java中PriorityQueue实现最小堆和最大堆的用法
2021/06/27 Java/Android