1. 程式人生 > >陣列其它常用函式1.range()2.array_unique()3.array_fill()4.array_rand()5. shuffle()6.array_merge($arr1, $arr2)

陣列其它常用函式1.range()2.array_unique()3.array_fill()4.array_rand()5. shuffle()6.array_merge($arr1, $arr2)

 
//1.range()
//生成指定範圍與步長的陣列
$arr = range(1,20,2);
echo '<pre>'.var_export($arr,true).'<br>';
$arr1 = range('a','s',2);
echo '<pre>'.var_export($arr1,true).'<hr>';

//2.array_unique()
//去掉陣列中元素值重複的元素
$arr2 = [4,10,22,10,30,22]; //10,22是重複的
echo '<pre>'.var_export(array_unique($arr2),true).'<hr>';

//3.array_fill()
//   填充陣列
//建立一個有10個元素的陣列,並用0進行初始化
//array_fill(起始索引,元素數量,填充值),預設為索引
$arr3 = array_fill(0,10,8);
echo '<pre>'.var_export($arr3,true).'<hr>';


//4.array_rand()
//從陣列中隨機取出資料,適合於抽獎
$arr = [2,14,19,5,44,10];
//注意:返回的是隨機元素的鍵名,不是值
//返回一個時返回標量的鍵名,一個以上返回鍵名陣列
$keys = array_rand($arr,3);
foreach ($keys as $key)
{
    //$res[$key] = $arr[$key];  // 類似於 0 => 2,3 => 5,4 => 44,
    $res[] = $arr[$key];          //鍵名從0開始
}
echo '<pre>'.var_export($res,true).'<hr>';


//5. shuffle();
//將陣列順序隨機打亂,直接更新原陣列,非常適合驗證碼
$arr = ['東邪','西毒','南帝','北丐'];
shuffle($arr);
echo '<pre>'.var_export($arr,true).'<hr>';


//6.array_merge($arr1, $arr2);
// 合併多個數組,同鍵名自動覆蓋,返回新陣列,適合配置引數的合併
 $db_sys=['host'=>'127.0.0.1','user'=>'root','pass'=>'root'];
 $db_user=['host'=>'localhsot','pass'=>'123456'];
 $arr = array_merge( $db_user,$db_sys);   //陣列位置不同,結果不同
echo '<pre>'.var_export($arr,true).'<hr>';