PHP calculates the sum based on an array key
数据类型:
{"game_id":"111","type":2,"num":504},{"game_id":"111","type":6,"num":8154},{"game_id":"111","type":41,"num":3426},{"game_id":"111","type":42,"num":45},{"game_id":"111","type":43,"num":1873}
需求:
把type=41 42 42的num相加 type 1 10相加
结果:
{"game_id":"111","type":2,"num":504},{"game_id":"111","type":6,"num":8154},{"game_id":"111","type":41,"num":5344}
code:
$str = '{"retCode":"0","retMsg":"成功","data":[{"game_id":"111","type":2,"num":504},{"game_id":"111","type":6,"num":8154},{"game_id":"111","type":41,"num":3426},{"game_id":"111","type":42,"num":45},{"game_id":"111","type":43,"num":1873},{"game_id":"119","type":1,"num":38},{"game_id":"119","type":2,"num":381},{"game_id":"119","type":6,"num":189},{"game_id":"119","type":10,"num":21},{"game_id":"120","type":2,"num":31},{"game_id":"120","type":6,"num":291},{"game_id":"120","type":41,"num":90},{"game_id":"120","type":43,"num":49},{"game_id":"127","type":1,"num":9},{"game_id":"127","type":2,"num":111},{"game_id":"127","type":6,"num":60},{"game_id":"129","type":1,"num":11},{"game_id":"129","type":2,"num":11},{"game_id":"129","type":6,"num":48},{"game_id":"129","type":10,"num":2},{"game_id":"130","type":6,"num":1},{"game_id":"137","type":2,"num":1},{"game_id":"139","type":2,"num":1387},{"game_id":"139","type":6,"num":3858},{"game_id":"139","type":10,"num":2358},{"game_id":"142","type":2,"num":32},{"game_id":"142","type":6,"num":948},{"game_id":"142","type":41,"num":330},{"game_id":"142","type":42,"num":3},{"game_id":"142","type":43,"num":47},{"game_id":"156","type":2,"num":11436},{"game_id":"156","type":6,"num":38135},{"game_id":"156","type":10,"num":22170},{"game_id":"165","type":6,"num":6},{"game_id":"165","type":41,"num":3},{"game_id":"165","type":43,"num":1},{"game_id":"50","type":2,"num":3},{"game_id":"8f093ab4ad19a509208a8104605c6e42","type":2,"num":281},{"game_id":"92","type":1,"num":26},{"game_id":"92","type":2,"num":186},{"game_id":"92","type":6,"num":153},{"game_id":"94","type":1,"num":538},{"game_id":"94","type":2,"num":3357},{"game_id":"94","type":6,"num":2847},{"game_id":"94","type":10,"num":74}]}';
$aaa = json_decode($str, true); $data = $aaa['data']; $new_array = array(); $array1 = array(41,42,43); $array2 = array(1,10); foreach($data as $v){ if(in_array($v['type'], $array2)){ if(isset($new_array[$v['game_id']][$array2[0]]['num'])){ $new_array[$v['game_id']][$array2[0]]['num'] += $v['num']; } else { $new_array[$v['game_id']][$array2[0]]['num'] = $v['num']; } }elseif (in_array($v['type'], $array1)) { if(isset($new_array[$v['game_id']][$array1[0]]['num'])){ $new_array[$v['game_id']][$array1[0]]['num'] += $v['num']; } else { $new_array[$v['game_id']][$array1[0]]['num'] = $v['num']; } }else{ if(isset($new_array[$v['game_id']][$v['type']]['num'])){ $new_array[$v['game_id']][$v['type']]['num'] += $v['num']; } else { $new_array[$v['game_id']][$v['type']]['num'] = $v['num']; } } } foreach($new_array as $k1 => $v1) { foreach($v1 as $k2 => $v2) { $new[$k1][] = array( 'game_id' => $k1, 'type' => $k2, 'num' => $v2['num'] ); } }
以上就介绍了 php 根据某数组key计算和,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



How to completely uninstall Win11XboxGameBar? Xbox GameBar is the game platform that comes with the system. It provides tools for game recording, screenshots and social functions. However, it takes up a lot of memory and is not easy to uninstall. Some friends want to uninstall it, but there is no way. How to completely uninstall it, let me introduce it to you below. Method 1. Use Windows Terminal 1. Press the [Win+X] key combination, or [right-click] click [Windows Start Menu] on the taskbar, and select [Terminal Administrator] from the menu item that opens. 2. User Account Control window, do you want to allow this app to make changes to your device? Click [Yes]. 3. Execute the following command: Get-AppxP

An error occurs when ubuntu mounts a mobile hard disk: mount: unknownfilesystemtype'exfat'. The processing method is as follows: Ubuntu13.10 or install exfat-fuse: sudoapt-getinstallexfat-fuseUbuntu13.04 or below sudoapt-add-repositoryppa:relan/exfatsudoapt-getupdatesudoapt-getinstallfuse- exfatCentOS Linux mount exfat format USB disk error solution to load extfa in CentOS

The usage of the Type keyword in Go includes defining new type aliases or creating new structure types. Detailed introduction: 1. Type alias. Use the "type" keyword to create an alias for an existing type. This alias does not create a new type, but only provides a new name for the existing type. Type aliases can improve code. The readability of the code makes the code clearer; 2. Structure type. Use the "type" keyword to create a new structure type. The structure is a composite type that can be used to define custom types containing multiple fields. etc.

The hype for Black Myth: Wukong has been felt globally as the game slowly crawled towards its launch date, and it didn't disappoint when it launched on August 20, having received a very warm welcome from the gaming community at large. After being onl

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

In this guide, we will learn more about the "type" command in Linux. Prerequisites: To perform the steps demonstrated in this guide, you need the following components: A properly configured Linux system. See how to create a LinuxVM for testing and learning purposes. Basic understanding of the command line interface The Type command in Linux is different from other Linux-specific commands (for example: ls, chmod, shutdown, vi, grep, pwd, etc.). The "type" command is a built-in Bash function that is displayed as an argument. Information about the command type provided. $type In addition to Bash, other shells (Zsh, Ksh, etc.) also come with

Sleeping Dogs: Definitive Edition is currently available at a heavily discounted price of just $2.99 on GOG, offering a massive 85% reduction from its original price of $19.99. To take advantage of this deal, simply visit the game's page on GOG, add

Building on the success of its predecessor, Sonic Generations ($39 on Amazon), Sega is set to release Sonic X Shadow Generations on October 25th, 2024. A title that has been highly awaited for a while now, Sega is expanding on the original game's for
