在php中,shuffle的中文意思为“洗牌”,该函数可以会将数组随机打乱,把数组中的元素按随机顺序重新排列,语法格式“shuffle(array)”。shuffle()函数会为数组中的元素分配新的键名,已存在的键名将被删除。
本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑
shuffle() 函数把数组中的元素按随机顺序重新排列。
shuffle() 函数不仅会将数组随机打乱,还会删除数组原有的键名,并重新建立新的键名,函数的语法格式如下:
shuffle(array)
其中 array 为待操作的数组。函数运行成功时会返回 TRUE,运行失败则返回 FALSE。
提示:shuffle() 函数只对数组的第一维度适用,对于多维数组中第一维度之外的维度则无效。
示例:使用 shuffle() 函数打乱数组顺序
<?php header("Content-type:text/html;charset=utf-8"); $info = array('颜色1' => '红色', '颜色2' => '黄色', '颜色3' => '蓝色', '颜色4' => '紫色'); echo '<pre class="brush:php;toolbar:false">'; echo '数组打乱顺序前:'; print_r($info); echo '数组打乱顺序后:'; shuffle($info); print_r($info); ?>
输出:
数组打乱顺序前:Array ( [颜色1] => 红色 [颜色2] => 黄色 [颜色3] => 蓝色 [颜色4] => 紫色 ) 数组打乱顺序后:Array ( [0] => 蓝色 [1] => 红色 [2] => 黄色 [3] => 紫色 )
与 array_rand() 函数类似,使用 shuffle() 函数同样可以实现生成随机验证码的功能,示例代码如下:
<?php function verCode(){ $arr = array_merge(range('A','Z'), range('a', 'z'), range('1', '9')); shuffle($arr); $newArr = array_slice($arr, 0, 4); $str = implode('', $newArr); return $str; } echo verCode().'<br>'; echo verCode().'<br>'; echo verCode().'<br>'; ?>
运行结果如下:
WLmj ngqO EolQ
注意:因为 shuffle() 函数是随机将数组打乱,所以每次执行的结果会不一样。
推荐学习:《PHP视频教程》
以上是php shuffle什么意思的详细内容。更多信息请关注PHP中文网其他相关文章!