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项目的方法
Oct 09 PHP
php下通过伪造http头破解防盗链的代码
Jul 03 PHP
php从右向左/从左向右截取字符串的实现方法
Nov 28 PHP
一些php项目中比较通用的php自建函数的详解
Jun 06 PHP
解析在PHP中使用全局变量的几种方法
Jun 24 PHP
微信营销平台系统?刮刮乐的开发
Jun 10 PHP
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
Sep 24 PHP
jQuery向下滚动即时加载内容实现的瀑布流效果
Jan 07 PHP
在Mac OS下搭建LNMP开发环境的步骤详解
Mar 10 PHP
Laravel框架实现多数据库连接操作详解
Jul 12 PHP
PHP const定义常量及global定义全局常量实例解析
May 28 PHP
php如何实现数据库的备份和恢复
Nov 30 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
咖啡磨器 如何选购一台适合家用的意式磨豆机
2021/03/05 新手入门
php对图像的各种处理函数代码小结
2013/07/08 PHP
php列出mysql表所有行和列的方法
2015/03/13 PHP
详解PHP安装mysql.so扩展的方法
2016/12/31 PHP
php使用Jpgraph创建折线图效果示例
2017/02/15 PHP
Yii框架学习笔记之应用组件操作示例
2019/11/13 PHP
学习YUI.Ext 第六天--关于树TreePanel(Part 2异步获取节点)
2007/03/10 Javascript
javascript+css 网页每次加载不同样式的实现方法
2009/12/27 Javascript
javascript instanceof,typeof的区别
2010/03/24 Javascript
JS文本框不能输入空格验证方法
2013/03/19 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
2014/12/18 Javascript
jQuery实现的仿百度分页足迹效果代码
2015/10/30 Javascript
WordPress中鼠标悬停显示和隐藏评论及引用按钮的实现
2016/01/12 Javascript
js通过classname来获取元素的方法
2016/11/24 Javascript
jQuery Pagination分页插件使用方法详解
2017/02/28 Javascript
jQuery实现腾讯信用界面(自制刻度尺)样式
2017/08/15 jQuery
微信小程序实现带缩略图轮播效果
2018/11/04 Javascript
解决vue移动端适配问题
2018/12/12 Javascript
这应该是最详细的响应式系统讲解了
2019/07/22 Javascript
Javascript中Math.max和Math.max.apply的区别和用法详解
2020/08/24 Javascript
vue单应用在ios系统中实现微信分享功能操作
2020/09/07 Javascript
js canvas实现俄罗斯方块
2020/10/11 Javascript
[02:09]DOTA2辉夜杯 EHOME夺冠举杯现场
2015/12/28 DOTA
[42:06]2019国际邀请赛全明星赛 8.23
2019/09/05 DOTA
Python入门学习之字符串与比较运算符
2015/10/12 Python
Python分割指定页数的pdf文件方法
2018/10/26 Python
python设置随机种子实例讲解
2019/09/12 Python
python 实现任务管理清单案例
2020/04/25 Python
python 爬虫爬取京东ps4售卖情况
2020/12/18 Python
css3教程之倾斜页面
2014/01/27 HTML / CSS
使用CSS3的appearance属性改变元素的外观的方法
2015/12/12 HTML / CSS
Html5 实现微信分享及自定义内容的流程
2019/08/20 HTML / CSS
Unix/Linux开发面试题
2016/08/16 面试题
工作迟到检讨书
2014/02/21 职场文书
医务人员岗前培训心得体会
2016/01/08 职场文书
九年级语文教学反思
2016/03/03 职场文书