php相同值合併數組,php相同值合併數組不同

本文目錄一覽:

PHP如何合併數組當中有相同數值的數組

array_unique函數提供了過濾重複的值的功能,但是該函數只能處理一維數組,如果遇到多維數組我們可以現將其轉化為一維數組。示例代碼如下

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

/*

* $data 是你要處理數據

* $result 是輸出的結果

*/

//將其轉化為一維數組

foreach ($data as $row) {

$row = serialize($row);

}

unset($row);

$data = array_unique($data);

//還原多維數組

foreach ($data as $row) {

$row = unserialize($row);

}

unset($row);

不好意思 樓主要求,我看錯了,追加下面的代碼

1

2

3

4

5

6

7

8

9

10

11

12

$result=array();

$tmp_arr=array();

foreach ($data as $row) {

$tmp_arr[$row[‘confuguarable_sku’]][] = $row[‘size’];

}

//將尺寸用逗號拼接

foreach ($tmp_arr as $sku = $size) {

$result[] = array(‘confuguarable_sku’=$sku, ‘size’=implode(“,”, $size));

}

echo “pre”;

//輸出結果

print_r($result);

php中,合併一個數組裡相同的值。

直接用array_unique()函數即可

$arr = [‘0006′,’0006′,’0005’];

print_r($arr);      //Array ( [0] = 0006 [1] = 0006 [2] = 0005 )

$arr = array_unique($arr);

print_r($arr);      //Array ( [0] = 0006 [2] = 0005 )

php將數組鍵值相同的數組合併數組為一個數組

把’huaka’改成了’huakai’似乎是一個人

?php

$a=array(

array(“username”=”piaoyudesi”,”email”=”piaoyudesi@163.com”,”address”=”shenzhen”,”item_id”=”10058″,”item_title”=”BPS8″),

array(“username”=”huakai”,”email”=”huakai@163.com”,”address”=”zhongshan”,”item_id”=”10087″,”item_title”=”BPS9″),

array(“username”=”huakai”,”email”=”huakai@163.com”,”address”=”zhongshan”,”item_id”=”10047″,”item_title”=”BPS10″),

array(“username”=”piaoyudesi”,”email”=”piaoyudesi@163.com”,”address”=”shenzhen”,”item_id”=”10042″,”item_title”=”BPS10″),

array(“username”=”jimowenxin”,”email”=”jimowenxin@163.com”,”address”=”zhuhai”,”item_id”=”10031″,”item_title”=”BPS18″)

);

$u=array();

foreach($a as $k=$e){

$name=$e[‘username’];

if(!isset($u[$name])){

$u[$name]=$e;

unset($u[$name][‘item_id’],$u[$name][‘item_title’]);

}

$u[$name][‘goods’][]=array(‘item_id’=$e[‘item_id’],’item_title’=$e[‘item_title’]);

}

$a=array_values($u); unset($u);

print_r($a);

=========

Array

(

[0] = Array

(

[username] = piaoyudesi

[email] = piaoyudesi@163.com

[address] = shenzhen

[goods] = Array

(

[0] = Array

(

[item_id] = 10058

[item_title] = BPS8

)

[1] = Array

(

[item_id] = 10042

[item_title] = BPS10

)

)

)

[1] = Array

(

[username] = huakai

[email] = huakai@163.com

[address] = zhongshan

[goods] = Array

(

[0] = Array

(

[item_id] = 10087

[item_title] = BPS9

)

[1] = Array

(

[item_id] = 10047

[item_title] = BPS10

)

)

)

[2] = Array

(

[username] = jimowenxin

[email] = jimowenxin@163.com

[address] = zhuhai

[goods] = Array

(

[0] = Array

(

[item_id] = 10031

[item_title] = BPS18

)

)

)

)

php 合併相同元素數組

先合併

array array_merge ( array $array1 [, array $… ] );

再去重

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )

php 合併多維數組中相同的值

$arr = array(

    array(

        array(

“stocknotifyId” = 1,

“sku” = ‘13809_BL_37’,

“email” = ‘huang@aaa.com’

),

        array(

“stocknotifyId” = 3,

“sku” = ‘13809_BL_37’,

“email” = ‘hrheve@dfwef.com’

),

        array(

“stocknotifyId” = 5,

“sku” = ‘13809_BL_37’,

“email” = ‘dfsfs@dfsf.com’

)

),

    array(

array(

“stocknotifyId” = 2,

“sku” = ‘13809_B_39’,

“email” = ‘huang@aaa.com’

)

),

array(

array(

“stocknotifyId” = 4,

“sku” = ‘13809_BL_39’,

“email” =’hrheve@dfwef.com’

)

)

);

$re = array();

foreach($arr as $a) {

foreach ($a as $v) {

$tmp_v = $v;

unset($tmp_v[’email’]);

if(isset($re[$v[’email’]])) {

$re[$v[’email’]][] = $tmp_v;

}else{

$re[$v[’email’]] = array($tmp_v);

}

}

}

print_r($re);

!– output —

Array    

(    

   [huang@aaa.com] = Array    

       (    

           [0] = Array    

               (    

                   [stocknotifyId] = 1    

                   [sku] = 13809_BL_37    

               )    

           [1] = Array    

               (    

                   [stocknotifyId] = 2    

                   [sku] = 13809_B_39    

               )    

       )    

   [hrheve@dfwef.com] = Array    

       (    

           [0] = Array    

               (    

                   [stocknotifyId] = 3    

                   [sku] = 13809_BL_37    

               )    

           [1] = Array    

               (    

                   [stocknotifyId] = 4    

                   [sku] = 13809_BL_39    

               )    

       )    

   [dfsfs@dfsf.com] = Array    

       (    

           [0] = Array    

               (    

                   [stocknotifyId] = 5    

                   [sku] = 13809_BL_37    

               )    

       )    

)

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/234070.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-11 17:12
下一篇 2024-12-11 17:12

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • Python導入數組

    本文將為您詳細闡述Python導入數組的方法、優勢、適用場景等方面,並附上代碼示例。 一、numpy庫的使用 numpy是Python中一個強大的數學庫,其中提供了非常豐富的數學函…

    編程 2025-04-29
  • 用不同的方法求素數

    素數是指只能被1和自身整除的正整數,如2、3、5、7、11、13等。素數在密碼學、計算機科學、數學、物理等領域都有著廣泛的應用。本文將介紹幾種常見的求素數的方法,包括暴力枚舉法、埃…

    編程 2025-04-29
  • Python返回數組:一次性搞定多種數據類型

    Python是一種多用途的高級編程語言,具有高效性和易讀性的特點,因此被廣泛應用於數據科學、機器學習、Web開發、遊戲開發等各個領域。其中,Python返回數組也是一項非常強大的功…

    編程 2025-04-29
  • Python去掉數組的中括弧

    在Python中,被中括弧包裹的數據結構是列表,列表是Python中非常常見的數據類型之一。但是,有些時候我們需要將列表展開成一維的數組,並且去掉中括弧。本文將為大家詳細介紹如何用…

    編程 2025-04-29
  • Python操作數組

    本文將從多個方面詳細介紹如何使用Python操作5個數組成的列表。 一、數組的定義 數組是一種用於存儲相同類型數據的數據結構。Python中的數組是通過列表來實現的,列表中可以存放…

    編程 2025-04-29
  • Python函數名稱相同參數不同:多態

    Python是一門面向對象的編程語言,它強烈支持多態性 一、什麼是多態多態是面向對象三大特性中的一種,它指的是:相同的函數名稱可以有不同的實現方式。也就是說,不同的對象調用同名方法…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Python二維數組對齊輸出

    本文將從多個方面詳細闡述Python二維數組對齊輸出的方法與技巧。 一、格式化輸出 Python中提供了格式化輸出的方法,可以對輸出的字元串進行格式化處理。 names = [‘A…

    編程 2025-04-29
  • 從不同位置觀察同一個物體,看到的圖形一定不同

    無論是在平時的生活中,還是在科學研究中,都會涉及到觀察物體的問題。而我們不僅要觀察物體本身,還需要考慮觀察的位置對觀察結果的影響。從不同位置觀察同一個物體,看到的圖形一定不同。接下…

    編程 2025-04-28

發表回復

登錄後才能評論