首頁  >  文章  >  後端開發  >  php shuffle什麼意思

php shuffle什麼意思

青灯夜游
青灯夜游原創
2021-07-07 12:52:193010瀏覽

在php中,shuffle的中文意思是“洗牌”,該函數可以會將數組隨機打亂,把數組中的元素按隨機順序重新排列,語法格式“shuffle(array)”。 shuffle()函數會為陣列中的元素指派新的鍵名,已存在的鍵名將會被刪除。

php shuffle什麼意思

本教學操作環境:windows7系統、PHP7.1版,DELL G3電腦

php shuffle什麼意思

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影片教學

以上是php shuffle什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn