2017-08-08 55 views
-3

我有一个JSON文件中的两个数组对象:如何在其他阵列总结在数组中值与关键

"Data": { 
     "Server": ["a", "a", "a", "a", "b", "b", "b", "b", "c", "c", "c", "c"], 
     "Count": ["12", "32", "7", "1", "67", "2", "3", "6", "5", "6", "5", "4"] 
    } 

什么,我想才达到是添加的阵列“计数”的所有值的相对值在“服务器”数组,并创建一个结构类似这样的新数组:

"Data": { 
      "Server": ["a", "b", "c"], 
      "Count": ["52", "78", "20"] 
     } 

任何人都可以在这方面帮助?

+0

显示你当前的代码 –

+0

告诉我们你尝试过什么? –

回答

1

一种方法是做这样的事情:

<?php 

$object = json_decode("your json here"); 
$server = $object->Server; 
$count = $object->Count; 

$tmp = []; 

for($i = 0; $i < $server; $i++){ 
    $tmp[$server[$i]] += $count[$i]; 
} 

$data = new stdClass(); 
$data->Server = array_keys($tmp); 
$data->Count = array_values($tmp); 

$json = json_encode($data); 

但我个人宁愿建立如下的结构:

{ 
    "Data": { 
     "Servers": { 
      "a":52, 
      "b":78, 
      "c":20 
     } 
    } 
} 
+0

我很抱歉我的问题混乱,但我不能显示所有的代码大。这篇文章回答了我的问题。谢谢! – pawell67