PHP數組相關函數

PHP數組在咱們開發中使用的頻率之高可想而知,凡是和數據庫打交道的都須要用到數組,並且處理好數組能更快的提高咱們的工做效率,因而整理了PHP數組相關的函數算法

PHP數組相關函數

數組排序相關函數

  • 對多個數組或多維數組進行排序: array_multisort
  • 返回一個順序相反的數組: array_reverse
  • 對數組逆向排序並保持鍵值對關係: arsort
  • 對數組進行順序排序並保持鍵值對關係: asort
  • 按照數組鍵名逆向排序: krsort
  • 按照數組鍵名順序排序: ksort
  • 不區分大小寫對數組排序: natcasesort
  • 按照天然算法對數組進行排序,區分大小寫: natsort
  • 對數組逆向排序: rsort
  • 將數組打亂: shuffle
  • 對數組排序: sort
  • 使用自定義比較函數對數組的值進行排序並保持索引關係: uasort
  • 用自定義比較函數對數組的鍵名進行排序: uksort
  • 用之定義比較函數對數組進行排序: usort

數組的鍵值操做函數

  • 數組鍵名大小寫轉換函數: array_change_key_case
  • 將一個鍵的數組和一個值的數組合併成一個鍵值對的數組: array_combine
  • 使用指定的鍵值填充數組: array_fill_keys
  • 使用指定的值填充數組: array_fill
  • 交換數組的鍵值: array_flip
  • 檢查鍵名或者索引是否在數組中: array_key_exists
  • 得到數組中全部的鍵名: array_keys
  • 獲取數組中全部的值: array_values
  • 將數組的鍵值對轉換爲變量,並對變量進行檢測是否存在和是否須要覆蓋: extract
  • 檢查數組中是否存在鍵: key_exists
  • 獲取數組當前值的鍵名: key
  • 將數組中的值賦值給一些變量: list

數組的分割和合並函數

  • 按指定的長度將一個數組拆分紅多個數組: array_chunk
  • 遞歸的合併一個或多個數組: array_merge_recursive
  • 合併一個或多個數組: array_merge

多維數組的操做

  • 返回多維數組中指定鍵的一列: array_column
  • 對數組的值遞歸的使用自定義函數: array_walk_recursive
  • 對數組的值使用自定義函數: array_walk

多數組操做

  • 將一個鍵的數組和一個值的數組合併成一個鍵值對的數組: array_combine
  • 檢查多個數組中和第一個數組差集含索引的差集檢查: array_diff_assoc
  • 檢查多個數組中和第一個數組的差集: array_diff_key
  • 經過回調函數作索引來計算數組的差集: array_diff_uassoc
  • 經過回調函數來對比鍵名返回數組的差集: array_diff_ukey
  • 檢查多個數組和第一個數組的差集不含鍵的檢查: array_diff
  • 帶索引檢查多個數組和第一個數組的交集: array_intersect_assoc
  • 使用鍵名比較多個數組和第一個數組的交集: array_intersect_key
  • 使用回調函數比較多個數組和第一個數組索引的交集: array_intersect_uassoc
  • 使用回調函數來比較多個數組和第一個數組鍵名的交集: array_intersect_ukey
  • 檢查多個數組和第一個數組的交集: array_intersect

數組的統計相關函數

  • 統計數組中全部值出現的次數: array_count_values

數組的回調操做

  • 經過回調函數作索引來計算數組的差集: array_diff_uassoc
  • 經過回調函數來對比鍵名返回數組的差集: array_diff_ukey
  • 使用回調函數比較多個數組和第一個數組索引的交集: array_intersect_uassoc
  • 使用回調函數來比較多個數組和第一個數組鍵名的交集: array_intersect_ukey
  • 使用回調函數對數組進行處理: array_map
  • 使用回調函數迭代的將數組替換成一個值: array_reduce
  • 使用回掉函數迭代遞歸數組替換成第一個數組的值: array_replace_recursive
  • 使用傳遞的數組替換第一個數組中的制定鍵的值: array_replace
  • 帶索引並用回調函數計算數組值的差集: array_udiff_assoc
  • 帶索引並用回調函數計算數組鍵值對的差集: array_udiff_uassoc
  • 使用回調函數來計算數組的差集: array_udiff
  • 帶索引並使用回調函數檢查數組值的交集: array_uintersect_assoc
  • 帶索引並使用回調函數檢查數組鍵值對的交集: array_uintersect_uassoc
  • 用回調函數計算數組的交集: array_uintersect

數組的增刪改查

  • 使用指定的值將數組填充到指定的長度: array_pad
  • 返回數組的最後一個值: array_pop
  • 將一個或多個數組壓入第一個數組: array_push
  • 搜索數組中制定的值: array_search
  • 將數組的第一個元素移出數組: array_shift
  • 讀取出數組的一部分: array_slice
  • 刪除數組一部分值或者用其餘的值替代: array_splice
  • 刪除數組中重複的值: array_unique
  • 在數組開頭插入值: array_unshift
  • 新建一個數組: array
  • 使用變量名及值創建一個數組: compact
  • 獲取數組中當前的值: current
  • 遞歸獲取數組當前的鍵值對: each
  • 獲取數組的最後一個元素的值: end
  • 判斷數組中是否存在某個值: in_array
  • 將數組的指針倒退一位: prev
  • 當前數組的值: pos
  • 將數組指針向前移動一位: next
  • 將數組的指針指向第一個元素: reset
  • 建立一個制定範圍的數組: range

數組的計算

  • 返回數組中全部值的乘積: array_product
  • 從數組中取出一個或多個值: array_rand
  • 求數組中全部值的和: array_sum
  • 計算數組中值的個數: count
  • 計算數組中值的個數: sizeof

開發中經常使用數組函數

在開發過程當中,我的使用較多的函數依次是:

  • array_rand 在作抽獎系統的時候用到,隨機的獲取一個獲獎的等級
  • count 經常使用的函數,統計一維數組和多維數組的長度
  • sort 在微信公衆平臺開發的時候用到這個函數來進行token的組裝驗證
  • array_fill 在開發抽獎系統的時候填充獲獎等級及中獎機率的時候用到
  • array_key_exists 在校驗數據合法性的時候經常使用,在驗證是否包含指定的鍵時經常使用
  • array_keys 在數據合法性的時候常常使用到,根據鍵和值來校驗
  • array_merge_recursive 在ThinkPHP編寫配製文件及多維數組合並的時候經常使用
  • array_merge 兩個數組合並
  • array_column 從數據庫中讀取數據合併並整理後常使用到,用於查找指定的列的集合
  • array_pop 在作緩存隊列的時候經常使用到
  • array_push 在作緩存隊列的時候經常使用到
  • array_search 有用到但很少,大部分是使用 in_array 進行一維數組的檢查,此函數支持多維數組及大小寫的檢測
  • array_shift 在作緩存隊列的時候經常使用到
  • array_unshift 在作緩存隊列的時候經常使用到
  • array 經常使用,可是愈來愈多的使用 [] 來建立數組了
  • in_array 經常使用,用於校驗和判斷
  • range 在生成隨機數組的時候用到
相關文章
相關標籤/搜索