Maison > développement back-end > tutoriel php > 多维数组中相同元素相加有关问题

多维数组中相同元素相加有关问题

WBOY
Libérer: 2016-06-13 12:51:27
original
930 Les gens l'ont consulté

多维数组中相同元素相加问题

本帖最后由 myths621 于 2013-03-19 12:04:11 编辑 首次发帖,请假高手
我从redis中取出五维数组需要处理相加,如下

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

<br />

$a = array(<br />

    <br />

        0 => array(<br />

<br />

            0=> array(<br />

            <br />

                "date" => "201201",<br />

                "area"=> array(<br />

                    12 => array(<br />

                        click => "3",<br />

                        traffic => "30"<br />

                    )   <br />

                )<br />

            ),  <br />

<br />

            1=> array(<br />

            <br />

                "date" => "201202",<br />

                "area"=> array(<br />

                    12 => array(<br />

                        click => "8",<br />

                        traffic => "40"<br />

                    ),<br />

                    8=> array(<br />

                        click => "5",<br />

                        traffic => "50"<br />

                    )<br />

                )<br />

            )   <br />

            <br />

        ),<br />

<br />

        1 => array(<br />

        <br />

            0=> array(<br />

            <br />

                "date" => "201201",<br />

                "area"=> array(<br />

                    12 => array(<br />

                        click => "9",<br />

                        traffic => "20"<br />

                    ),<br />

                    8=> array(<br />

                        click => "6",<br />

                        traffic => "60"<br />

                    )<br />

                )<br />

                ),<br />

            <br />

            1=> array(<br />

            <br />

                "date" => "201202",<br />

                "area" => NULL<br />

            )<br />

        ),<br />

    <br />

    <br />

    );<br />

<br />

Copier après la connexion


希望数据处理后,相同date前提下,area里相同的key所对应的click和traffic值相加,即0和1这两个大数组,date为201001的,area中12所对应的click和traffic处理后应该是12和50,8对应的是6和60,其他类推,求遍历或其他能处理成功的方法,感激不尽~!
多维数组


------解决方案--------------------
最后结果是怎么样的? 贴一下。
------解决方案--------------------

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

$t = array();<br />

foreach ($a as $k=>$v)<br />

{<br />

    foreach ($v as $k1=>$v1)<br />

    {<br />

        $t[0][$k1]['date'] = $v1['date'];<br />

        foreach ($v1['area'] as $k2=>$v2)<br />

        {<br />

            $t[0][$k1]['area'][$k2]['click'] += $v2['click'];<br />

            $t[0][$k1]['area'][$k2]['traffic'] += $v2['traffic'];<br />

        }<br />

    }<br />

}<br />

echo "<pre class="brush:php;toolbar:false">";<br />

print_r($t);<br />

echo "<pre class="brush:php;toolbar:false">";

Copier après la connexion


结果如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<br>

Array<br>

(<br>

    [0] => Array<br>

        (<br>

            [0] => Array<br>

                (<br>

                    [date] => 201201<br>

                    [area] => Array<br>

                        (<br>

                            [12] => Array<br>

                                (<br>

                                    [click] => 12 <div class="clear">

                  

               

               

         

            </div>

Copier après la connexion
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal