php中有很多排序的函式,sort,rsort,ksort,krsort,asort,arsort,natcasesort,這些函式用來對陣列的鍵或值進行這樣,或那樣的排序,
可以終究有時候還需要一些函式來隨機獲取陣列的元素,
array_rand()函式
隨機獲取陣列中的一個函式,可以通過第二個引數指定一次獲取多少個元素,第一個引數目標陣列
注意:這里的隨機只是偽亂數
例子1
1 $arr = [1, 2, 3, 4, 5]; 2 print( array_rand( $arr, 6 ) );
輸出:
Warning: array_rand(): Second argument has to be between 1 and the number of elements in the array in D:\workspace\project_shop\demo.php on line 3
其實echo什么也沒有輸出,只有一個警告,就是第二個引數一定要 小于等于 $arr 陣列元素的個數,
例子2 正常的用法,回傳的是一個陣列,
1 $arr = [1, 2, 3, 4, 5]; 2 print_r( array_rand( $arr, 3 ) ) ; 3 // Array 4 // ( 5 // [0] => 0 6 // [1] => 1 7 // [2] => 2 8 // )
shuffe()函式 ,打亂陣列中的元素位置
這個函式按參考傳遞一個目標陣列,回傳真偽值
例子3 從結果可以看到,打亂元素位置順序之后,并未保留原來的鍵值關系
1 $arr = [1, 2, 3, 4, 5]; 2 var_dump( shuffle( $arr ) ) ; 3 print_r( $arr ); 4 // bool(true) 5 // Array 6 // ( 7 // [0] => 3 8 // [1] => 4 9 // [2] => 2 10 // [3] => 1 11 // [4] => 5 12 // )
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/117794.html
標籤:PHP
上一篇:系統的講解 - PHP 快取技術
