<?php
/* 數組的相關處理函數
*
* 一 數組鍵/值操作有關的函數
* 1. array_values()
* 2. array_keys()
* 3. in_array()
4. array_key_exists
5.array_flip -- 交換數組中的鍵和值
6. array_reverse -- 返回一個單元順序相反的數組
二、 統計數組元素的個數和惟一性
1. count() sizeof();
2. array_count_values -- 統計數組中所有的值出現的次數
3. array_unique -- 移除數組中重複的值
三、使用回調函數處理數組的函數
1. array_filter() 用回調函數過濾數組中的單元
2. array_walk()
3. array_map()
*
*
*/
$arr=array(1,2,3,4,5,-6,7,7,8,8,-9,9,10,11,-12);
$arr1=array_filter($arr, "myfun");
function myfun($n){
if($n%2==0)
return true;
else
return false;
}
echo '<pre>';
print_r($arr1);
echo '</pre>';
四、/* 數組的排序函數
* sort()//注意修改的是數組本身,最後返回的是索引數組
* rsort()//同上
ksort()//注意修改的是數組本身,對數組進行排序並保持索引關係
* krsort()
*
* asort()//注意修改的是數組本身,對數組進行排序並保持索引關係
* arsort()//同上
usort()
uasort()
* uksort()
* natsort()
* natcasesort()
* array_multisort()
*
* 1. 簡單的數組排序
* sort() rsort()
* 2. 根據鍵名對數組排序
* ksort() krsort()
* 3. 根據元素的值對數組排序
* asort() arsort()
* 4. 根據“自然數排序”法對數組排序
* natsort() natcasesort()
* 5. 根據用戶自定義規則對數組排序
* usort() uasort() uksort()
* 6.多維數組的排序
* array_multisort
*
* 五、拆分、合併、分解、接合的數組函數
* 1. array_slice(array,offset,length)//從數組中取出一段,offset爲數組的索引下標。返回保持索引關係的數組
* 2.array_splice()//把數組中的一部分去掉並用其它值取代
* 3. array_combine();// 創建一個數組,用一個數組的值作爲其鍵名,另一個數組的值作爲其值
* 4. array_merge();//合併一個或多個數組
* 5. array_intersect();//計算交集
* 6. array_diff()//計算差集
*
*
*
*六、 數組與數據結構的函數
* 1. 使用數據實現堆棧
* $a1=array("OS","webServer","DataBase","Langusge");
$a1[]="one";//進棧
$a2[]="two";或者
array_push($a1,"three");//進棧
* value=array_pop($a1);//出棧
2、模擬隊列
array_unshift($a1,"wwww");//入隊
$value=array_shift()//取出
unset($a1[5]);//刪除索引爲第5的元素。刪除任意地方的數組元素
*七、 其它與數據操作有關的函數
array_rand();//從數組中隨機取出一個或多個單元 ,並返回隨機條目的一個或多個鍵。如果你只取出一個,array_rand() 返回一個隨機單元的鍵名,否則就返回一個包含隨機鍵名的數組。數組爲索引數組
shuffle();//將數組打亂
array_sum();
range();// 建立一個包含指定範圍單元的數組
*
*
*
*/
$a1=array("OS", "WebServer", "DataBase", "Language");
$a1[]="one";
$a1[]="two";
array_push($a1, "three");
array_push($a1, "four", "five");
$value=array_pop($a1);
$value=array_pop($a1);
print_r($a1);
echo '<br>';
echo $value;