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 Token(令牌)设计
Mar 15 PHP
php侧拉菜单 漂亮,可以向右或者向左展开,支持FF,IE
Oct 15 PHP
PHP实现根据设备类型自动跳转相应页面的方法
Jul 24 PHP
2014年最新推荐的10款 PHP 开发框架
Aug 01 PHP
php获取数组元素中头一个数组元素值的实现方法
Dec 20 PHP
php支付宝手机网页支付类实例
Mar 04 PHP
PHP中利用sleep函数实现定时执行功能实现代码
Aug 25 PHP
PHP页面输出时js设置input框的选中值
Sep 30 PHP
Yii2.0中使用js异步删除示例
Mar 10 PHP
thinkPHP5.0框架开发规范简介
Mar 25 PHP
PHP实现用session来实现记录用户登陆信息
Oct 15 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
Apr 05 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
smarty中post用法实例
2014/11/28 PHP
php将金额数字转化为中文大写
2015/07/09 PHP
php验证码生成代码
2015/11/11 PHP
PHP中常用的数组操作方法笔记整理
2016/05/16 PHP
Yii2中使用asset压缩js,css文件的方法
2016/11/24 PHP
yii2使用GridView实现数据全选及批量删除按钮示例
2017/03/01 PHP
PHP实现求解最长公共子串问题的方法
2017/11/17 PHP
DIV菜单层实现代码
2010/11/19 Javascript
createElement与createDocumentFragment的点点区别小结
2011/12/19 Javascript
使用jquery实现简单的ajax
2013/07/08 Javascript
js+html5实现可在手机上玩的拼图游戏
2015/07/17 Javascript
AngularJS的一些基本样式初窥
2015/07/27 Javascript
jQuery中inArray方法注意事项分析
2016/01/25 Javascript
jQuery使用Selectator插件实现多选下拉列表过滤框(附源码下载)
2016/04/08 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
AngularJS修改model值时,显示内容不变的实例
2018/09/13 Javascript
Element-UI踩坑之Pagination组件的使用
2018/10/29 Javascript
浅谈ng-zorro使用心得
2018/12/03 Javascript
Angular中使用ng-zorro图标库部分图标不能正常显示问题
2019/04/22 Javascript
JS中的函数与对象的创建方式
2019/05/12 Javascript
微信小程序实现上传图片裁剪图片过程解析
2019/08/22 Javascript
jQuery 隐藏/显示效果函数用法实例分析
2020/05/20 jQuery
详解vue实现坐标拾取器功能示例
2020/11/18 Vue.js
javascript实现京东快递单号的查询效果
2020/11/30 Javascript
[01:07:53]RNG vs VG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python中断言Assertion的一些改进方案
2016/10/27 Python
Django框架之登录后自定义跳转页面的实现方法
2019/07/18 Python
python + selenium 刷B站播放量的实例代码
2020/06/12 Python
详解Python 循环嵌套
2020/07/09 Python
Python用Jira库来操作Jira
2020/12/28 Python
HTML5+CSS3 实现灵动的动画 TAB 切换效果(DEMO)
2017/09/15 HTML / CSS
《我的第一本书》教学反思
2014/02/15 职场文书
优秀家长自荐材料
2014/08/26 职场文书
我爱家乡演讲稿
2014/09/12 职场文书
2014年财务个人工作总结
2014/12/08 职场文书
Python requests用法和django后台处理详解
2022/03/19 Python