Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php shuffle什么意思

php shuffle什么意思

青灯夜游
青灯夜游asal
2021-07-07 12:52:193026semak imbas

在php中,shuffle的中文意思为“洗牌”,该函数可以会将数组随机打乱,把数组中的元素按随机顺序重新排列,语法格式“shuffle(array)”。shuffle()函数会为数组中的元素分配新的键名,已存在的键名将被删除。

php shuffle什么意思

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

1.png

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

shuffle() 函数不仅会将数组随机打乱,还会删除数组原有的键名,并重新建立新的键名,函数的语法格式如下:

shuffle(array)

其中 array 为待操作的数组。函数运行成功时会返回 TRUE,运行失败则返回 FALSE。

提示:shuffle() 函数只对数组的第一维度适用,对于多维数组中第一维度之外的维度则无效。

示例:使用 shuffle() 函数打乱数组顺序

<?php
header("Content-type:text/html;charset=utf-8");
$info = array(&#39;颜色1&#39; => &#39;红色&#39;, &#39;颜色2&#39; => &#39;黄色&#39;, &#39;颜色3&#39; => &#39;蓝色&#39;, &#39;颜色4&#39; => &#39;紫色&#39;);
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
echo &#39;数组打乱顺序前:&#39;;
print_r($info);
echo &#39;数组打乱顺序后:&#39;;
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(&#39;A&#39;,&#39;Z&#39;), range(&#39;a&#39;, &#39;z&#39;), range(&#39;1&#39;, &#39;9&#39;));
        shuffle($arr);
        $newArr = array_slice($arr, 0, 4);
        $str    = implode(&#39;&#39;, $newArr);
        return $str;
    }
    echo verCode().&#39;<br>&#39;;
    echo verCode().&#39;<br>&#39;;
    echo verCode().&#39;<br>&#39;;
?>

运行结果如下:

WLmj
ngqO
EolQ

注意:因为 shuffle() 函数是随机将数组打乱,所以每次执行的结果会不一样。

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci php shuffle什么意思. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php pdo 是什么意思Artikel seterusnya:php怎么设置可跨域