in_array() 判斷元素是否在數組內。第三個參數(true或false)表示判斷類型。
array_search() 搜索數組元素並返回第一個對應的鍵名。找不到返回false。
array_change_key_case() 更改鍵名的大小寫,由第二個參數(CASE_UPPER、CASE_LOWER)指定。系統常量不區分大小寫。但最好都大寫以便於區分。
注意:如果原數組鍵名相同但大小寫不同,使用大小寫轉換後,後出現的鍵-值將會替換前面出現的鍵-值。
array_chunk() 將數組進行拆分,第二個參數指定拆分後的數組的長度,第三個參數可選,指定是否繼承鍵名,默認爲false。
array_combine() 通過兩個數組(可以是關聯數組)生成新數組。第一個數組元素值作爲爲鍵名,第二個數組對應元素值作爲鍵值,兩者必須相等,否者返回false。
array_diff() 比較與其他數組的鍵值差異,返回包含對應鍵值對的數組(差集)。
array_diff_key() 比較與其他數組的鍵名差異,返回包含對應鍵值對的數組(差集)。
array_diff_assoc() 鍵名與鍵值同時比較。鍵名和鍵值其中中有一處不一樣就返回(差集)。(邏輯或)
<?php
function dump($arr){ //自定義一個函數用於輸出數組和變量
echo "<pre>";
if(is_array($arr)){
print_r($arr);
}else{
var_dump($arr);
}
echo "</pre>";
}
$arr = array("patch","web_frame"=>"flask","php","arr"=>array("html",3),0,"html");
echo in_array("php",$arr,true)?"在數組中":"找不到";
dump(array_search("flask",$arr));
echo "鍵名轉化爲大寫:<br/>";
dump(array_change_key_case($arr,CASE_UPPER));
echo "數組拆分生成新數組,繼承鍵名:<br/>";
dump(array_chunk($arr,2,true));
echo "生成新數組:<br/>";
$arr_key = array("key1","key2","par_key3"=>"key3",4);
$arr_value = array("value1","sub_key2"=>"value2","sub_key3"=>"value3","value4");
dump(array_combine($arr_key,$arr_value));
echo "檢索與其他數組的不同:<br/>";
$arr_key1 = array("key3","par_key","sub_key1",0);
$arr_key2 = array("key2","abc");
dump(array_diff($arr_key,$arr_key1,$arr_key2)); //可以與多個數組進行比較
dump(array_diff_key($arr_key,$arr_key1)); //檢索與其他數組鍵名的不同,以數組形式返回
dump(array_diff_assoc($arr_key,$arr_key1));
?>
結果:
在數組中
string 'web_frame' (length=9)
鍵名轉化爲大寫:
Array
(
[0] => patch
[WEB_FRAME] => flask
[1] => php
[ARR] => Array
(
[0] => html
[1] => 3
)
[2] => 0
[3] => html
)
數組拆分生成新數組,繼承鍵名:
Array
(
[0] => Array
(
[0] => patch
[web_frame] => flask
)
[1] => Array
(
[1] => php
[arr] => Array
(
[0] => html
[1] => 3
)
)
[2] => Array
(
[2] => 0
[3] => html
)
)
生成新數組:
Array
(
[key1] => value1
[key2] => value2
[key3] => value3
[4] => value4
)
檢索與其他數組的不同:
Array
(
[0] => key1
[2] => 4
)
Array
(
[par_key3] => key3
)
Array
(
[0] => key1
[1] => key2
[par_key3] => key3
[2] => 4
)
以上均爲個人理解,初學php,如果有不對的地方,歡迎大家指正!