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

yipeiwu_com6年前PHP代码库
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中++i 与 i++ 的区别

1、++i 的用法(以 a=++i ,i=2 为例) 先将 i 值加 1 (也就是 i=i+1 ),然后赋给变量 a (也就是 a=i ), 则最终 a 值等于 3 , i 值等于 3...

php 常用的系统函数

字符串函数 strlen:获取字符串长度,字节长度 substr:字符串截取,获取字符串(按照字节进行截取) strchr:与substr相似,从指定位置截取一直到最后 strrchr(...

详解php中反射的应用

反射是在PHP运行状态中,扩展分析PHP程序,导出或提取出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取的信息以及动态调用对象的方法的功能称为反射API。反射是操纵面向对象...

PHP5各个版本的新功能和新特性总结

本文目录:PHP5.2 以前:autoload, PDO 和 MySQLi, 类型约束PHP5.2:JSON 支持PHP5.3:弃用的功能,匿名函数,新增魔术方法,命名空间,后期静态绑定...

php实现数组中出现次数超过一半的数字的统计方法

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出...