我有以下数组:
Array
(
[0] => Array
(
[0] => 2015-07-18
[1] => 22 SSH
)
[1] => Array
(
[0] => 2015-07-18
[1] => 80 HTTP
)
[2] => Array
(
[0] => 2015-07-18
[1] => 3389 Remote Desktop
)
[3] => Array
(
[0] => 2015-07-19
[1] => 3389 Remote Desktop
)
[4] => Array
(
[0] => 2015-07-19
[1] => 3389 Remote Desktop
)
)
以及以下函数将数据以高图表的形式提供所需的格式/数组:
$result = array();
$result[0] = array();
$result[0][data] = array();
foreach ($stack_stats_timeline as $key => &$value) {
if(!in_array($value[0], $result[0][data], true)) array_push($result[0][data], $value[0]);
$hash = $value[1];
$result[$hash][name] = $value[1];
$result[$hash][data][$value[0]] += 1;
}
到目前为止一切都那么好......不过问题在于我什么时候
$result = json_encode($result);
print_r($result);
我得到了
[{"data":["2015-07-01","2015-07-02","2015-07-03"]},{"name":"8080 Unknown","data":{"2015-07-01":4,"2015-07-02":8,"2015-07-03":5}},{"name":"8118 Unknown","data":{"2015-07-01":3}},{"name":"3389 Remote Desktop","data":{"2015-07-01":14,"2015-07-02":52,"2015-07-03":65}},{"name":"80 HTTP","data":{"2015-07-01":3,"2015-07-02":12,"2015-07-03":7}},{"name":"8228 Unknown","data":{"2015-07-01":3}}]
当格式为:
时,问题出现在数据中{"key":number,"key":number}
这应该只是:
{number,number}
问题:在按日期对出现事项进行排序后,如何删除数组键?
答案 0 :(得分:1)
我可能会做一些事情:
$headings = $result[0]['data'];
for ($i = 0; $i < count($result[1]); $i ++) {
$data = $result[1][$i]['data'];
$newdata = array();
foreach($headings as $key)
$newdata[] = isset($data[$key]) ? $data[$key] : 0;
$result[1][$i]['data'] = $newdata;
}