數據處理是任何程序員都避免不了的,PHP有一套強大的數組處理函數,能夠很好幫助處理常見的數據處理問題。本身的腦子記性很差,常常忘記函數怎樣用,因此記下來給本身之後好好翻查,也但願對大家有所幫助吧。php
這個簡單,給簡單列一下,歡迎補充:程序員
(1)數組定義數組
<?php // 數組定義 $arr1 = array(); $arr2 = []; ?>
(2)數組賦值函數
<?php // 利用 list 函數給數組賦值 list($arr[], $arr[], $arr[]) = [1, 2, 3]; ?>
函數功能:能夠同時對多個數組進行排序,關聯鍵名保持不變,數字鍵名會被從新索引。code
<?php // 自定義數據 $data[] = array('volume' => 67, 'edition' => 2); $data[] = array('volume' => 86, 'edition' => 1); $data[] = array('volume' => 85, 'edition' => 6); $data[] = array('volume' => 98, 'edition' => 2); $data[] = array('volume' => 86, 'edition' => 6); $data[] = array('volume' => 67, 'edition' => 7); // 取得列的列表 foreach ($data as $key => $row) { $volume[$key] = $row['volume']; $edition[$key] = $row['edition']; } // 先將數據根據 volume 降序排列,出現重複時再根據 edition 升序排列 // 把 $data 做爲最後一個參數,以通用鍵排序 array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data); print_r($data); ?>
函數功能:根據指定的 key,獲取指定的那一列數據。排序
<?php // 對目標數組獲取 key 的一列,並複製到結果數組 $resultArr = array_column($targetArr, 'key'); ?>
函數功能:對兩個數組進行比較,求兩個數組的差集。索引
<?php // 把兩個數組的差集保存到結果數組 $diffArr = array_diff($arr1, $arr2); ?>
函數功能:將數組中的鍵和值進行位置調換,ip
<?php // 把目標數組的鍵和值互換位置 array_flip($targetArr); ?>
函數功能:比較兩個數據的交集,算出兩個數組的相同部分。字符串
<?php // 兩個數組的交集保存到結果數組 $resultArr = array_intersect($arr1, $arr2) ?>
函數功能:判斷數組中指定鍵名或索引是否存在,僅適用一維數組。get
<?php
// 判斷數組是否有 key 這個鍵 if(!array_key_exists('key', $targetArr)) { throw new \Exception('目標數組沒有key這個鍵!'); }
?>
函數功能:合併多個數據,不會合並相同鍵值的元素。
<?php // 合併數組 $resultArr = array_merge($arr1, $arr2) ?>
函數功能:設定函數長度,多除少補地保證數組長度跟設定的一致,能夠設置補充元素的值。
<?php // 結果計劃是:$resultArr = [1,2,3,0,0] $resultArr = array_pad([1,2,3], 5, 0); ?>
函數功能:把數組最後一個函數去掉。
<?php // 刪掉最後一個元素 $resultArr = array_pop([1,2,3]);// $resultArr = [3]; [1,2] ?>
函數功能:計算數組內的全部元素相乘的結果,空數組返回1。
<?php // 數組內元素相乘 $result = array_product([1,2,3]) // $result = 6 ?>
函數功能:計算數組內全部元素相加的結果,空數組返回0。
<?php // 數組內元素相加 $result = array_sum([1,2,3,4]) // $result = 10 ?>
函數功能:給數組疊加(入棧)元素,能夠是多個。
<?php // 數組加元素 $resultArr = array_push([1,2],3,4); // $resultArr = [1,2,3,4] ?>
函數功能:搜索數組指定值,搜索成功將返回首個元素的鍵值。
<?php // 把數組搜索 needle 的結果保存起來 $result = array_search('needle', $targetArr); ?>
函數功能:把數組中的第一個元素刪掉,彈出第一個元素。
<?php // 刪掉第一個元素 $resultArr = array_shift([1,2,3]); // [2,3] ?>
函數功能:把數組以必定格式轉爲字符串。
<?php $arr = array('Hello','World!','I','love','Shanghai!'); echo implode(" ",$arr);// 數組以空格連在一塊兒,轉成字符串 ?>
函數功能:把字符串以必定格式切割轉爲數組。
<?php $str = "Hello world. I love Shanghai!"; print_r (explode(" ",$str));// 字符串以空格的方式切割,轉爲數組 ?>