您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關使用php怎么根據分類對數組進行合并,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
最簡單的數組合并我們只要使用array_merge即可
array_merge()將兩個或多個數組的單元合并起來,一個數組中的值附加在前一個數組的后面。返回作為結果的數組。
數組鍵名為數字鍵名時,要合并的兩個數組中有同名數字KEY的時候,使用array_merge()不會覆蓋掉原來的值,而使用“+”合并數組則會把最先出現的值作為最終結果返回,而把后面的數組擁有相同鍵名的那些值“拋棄”掉(注意:不是覆蓋而是保留最先出現的那個值)。例子:
復制代碼 代碼如下:
$array1 = array(1=>'0');
$array2 = array(1=> "data");
$result1 = $array2 + $array1;/*結果為$array2的值*/
print_r($result);
$result = $array1 + $array2 ;/*結果為$array1的值*/
print_r($result);
$result3 = array_merge($array2,$array1);/*結果為$array2和$array1的值,鍵名被重新分配*/
print_r($result3);
$result4 = array_merge($array1,$array2);/*結果為$array1和$array2的值,鍵名被重新分配*/
print_r($result4);
輸出結果為:
Array ( [1] => data )
Array ( [1] => 0 )
Array (
[0] => data
[1] => 0
)
Array
(
[0] => 0
[1] => data
)
2.當相同數組鍵名為字符時,“+”運算符與鍵名為數字時一樣,但array_merge()此時會覆蓋掉前面相同鍵名的值。
例子:
復制代碼 代碼如下:
$array1 = array('asd'=>'0');
$array2 = array('asd' => "data");
$result1 = $array2 + $array1;/*結果為$array2的值*/
print_r($result);
$result = $array1 + $array2 ;/*結果為$array1的值*/
print_r($result);
$result3 = array_merge($array2,$array1);/*結果為$array1*/
print_r($result3);
$result4 = array_merge($array1,$array2);/*結果為$array2*/
print_r($result4);
輸出結果為:
Array ( [asd] => data )
Array ( [asd] => 0 )
Array ( [asd] => 0 )
Array ( [asd] => data )
講了這么多費話,下面才是我要給各位朋友介紹的
根據分類字段進行數組重組
復制代碼 代碼如下:
<?php
//需要重組的數組
$arrar=array();
$array[]=array('ItemID' => 110126866896,'CategoryID'=>111);
$array[]=array('ItemID' => 120126866896,'CategoryID'=>112);
$array[]=array('ItemID' => 130126866896,'CategoryID'=>113);
$array[]=array('ItemID' => 140126866896,'CategoryID'=>114);
$array[]=array('ItemID' => 150126866896,'CategoryID'=>115);
$array[]=array('ItemID' => 160126866896,'CategoryID'=>116);
$array[]=array('ItemID' => 170126866896,'CategoryID'=>117);
$array[]=array('ItemID' => 118126866896,'CategoryID'=>111);
$array[]=array('ItemID' => 121126866896,'CategoryID'=>112);
$array[]=array('ItemID' => 132126866896,'CategoryID'=>113);
$array[]=array('ItemID' => 143126866896,'CategoryID'=>114);
$array[]=array('ItemID' => 154126866896,'CategoryID'=>115);
$array[]=array('ItemID' => 165126866896,'CategoryID'=>116);
$array[]=array('ItemID' => 176126866896,'CategoryID'=>117);
//數組根據分類進行重組
$newArray=array();
foreach($array as $val){
$newArray[$val['CategoryID']][]=$val;
}
//刪除原始數組釋放空間
$array=null;
unset($array);
print_r($newArray);
?>
以上就是使用php怎么根據分類對數組進行合并,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。