1. 程式人生 > >PHP陣列函式常用匯總

PHP陣列函式常用匯總

一、is_array():判斷變數是否為陣列;// is_string 判斷是否為字元  is_numeric:數字或數字字串
      用法:is_array(變數);//是陣列返回 true,不是返回false 實際應用:在迴圈陣列之前先判斷是否為陣列,預防程式報錯
二、in_array():檢查陣列中是否存在指定值 ,區分大小寫;
      用法:in_array(值,陣列);//存在返回true否則返回false
      常用場景:  使用GET傳值,判斷預定的值和傳遞的值是否匹配
三、array_search()

:在陣列中搜索給定值;
      用法:array_search(值,陣列); 存在返回鍵名(下標)
四、array_unique():移除陣列中重複的值;
      用法:array_unique(陣列變數); // 返回移除重複的值後的新陣列
      注意:當幾個元素值相同時,只保留第一個元素的鍵和值
五、array_pop():刪除陣列中最後一個元素[出棧]*;     
      用法:array_pop(陣列);//返回刪除的元素的值,執行後源陣列將會改變
六、array_push()
:在陣列最後位置新增一個或多個元素[入棧];     
      用法:array_push(陣列,新元素1[,新元素2,……]);返回新陣列長度     
      說明:1)此函式和 $array[] = $value;效果一樣,效率要高一點;        
                2)如果陣列中鍵為字串,新增的元素也始終是數字鍵,從0開始
七、array_shift
()
:刪除陣列第一個元素;[出棧]      
      用法:array_shift(陣列);//返回被刪除的元素值,執行後源陣列將改變      
      說明:鍵名是數字,所有元素都會獲得新的鍵名,從 0 開始,並以 1 遞增
八、array_unshift():在陣列開始位置新增一個或多個元素;[入棧]*     
      用法:array_unshift(陣列,新元素1[,新元素2,……]);返回新陣列長度     
      說明:原陣列鍵為字串則保持不變,新元素鍵名從0開始,以1遞增。               
      原陣列鍵為數字,則新陣列鍵將重新從0開始依次遞增排列
九、array_rand():隨機選出一個或多個數組鍵名[下標],並返回;
      用法:array_rand(陣列變數[,返回多少元素]);
      注意:當第二個引數為空時,隨機返回一個鍵名[下標]               
               第二個引數的值大於1時,返回包含隨機鍵名的陣列      
      用途:手機號碼搖獎,把手機號提取出來放入陣列中,在使用array_rand  隨機獲取鍵名,在找到手機號
十、list():用於在一次操作中給一組變數賦值;
      用法:list(var1,var2,...)=array(1,2,3,...);
      說明:list只能用於數字索引的陣列且下標是從0開始,連續索引。        
      作用:實現變數值互換;陣列值的互換;                  
               函式返回值是自動序號的陣列,則將其每個元素值,快速付給變數
十一、count():統計陣列元素個數;
         用法:count(陣列變數 [,COUNT_RECURSIVE / 1]); //返回元素個數
         說明:第二個引數可選,預設值 0 只能統計一維陣列元素個數; 
                    第二個引數設定成 1 或 COUNT_RECURSIVE,統計多維陣列所有元素個數
十二、array_merge():函式把兩個或多個數組合併成一個數組;
          用法:array_merge(陣列1,陣列2,……);//返回新的陣列
         說明:1)字串鍵名重複,保留最後一個鍵名對應的值(後面的覆蓋前面的)      
                   2)陣列是數字索引的,則鍵名會以連續方式重新索引。       
                  3)如果僅僅向 array_merge() 函式輸入了一個數組,且鍵名是整數,則 該函式將返回帶有整數鍵名的新陣列,其鍵名以 0 開始進行重新索引
十三、explode():將字串,切割成陣列;
          用法:explode(分隔符,字串);//分割符,不能為空     
          說明:分割符在字串中,返回的陣列中將不再存在該符號                
          分割符不在字串中,返回一個元素的陣列      
          案例:使用__FILE__獲取路徑,使用陣列函式獲取副檔名
十四、implode():把陣列元素組合為字串;
          用法:implode(合併符,陣列); // 返回合併後的字串
         說明:合併符可以為空;
十五、ksort(陣列[,排序方式]):按鍵名進行升序排列,原鍵名和鍵值關聯不變;
十六、krsort(陣列[,排序方式]):按鍵名進行倒序排序,原鍵名和鍵值關聯不變;     
          說明:執行後,原陣列將會變化,無需使用返回值;               
                   第二引數可選,為排序方式,
                   如:SORT_STRING:按照字元排序
十七、asort(陣列[,排序方式]):按鍵值進行升序排列,原鍵名和鍵值關聯不變;
十八、arsort(陣列[,排序方式]):按鍵值進行倒序排序,原鍵名和鍵值關聯不變;    
         說明:執行後,原陣列將會變化,無需使用返回值;
          第二引數可選,為排序方式,
          如:SORT_STRING:按照字元排序 *
十九、sort(陣列[,排序方式]):按鍵值進行升序排列,原鍵名被刪除,重新賦予新鍵名,從0開始,以1遞增;
二十、 rsort(陣列[,排序方式]):按鍵值進行倒序排序,原鍵名被刪除;