繁体   English   中英

合并来自API的数据数组

[英]Merge array of data from API

首先,我有一个报告系统,可以读取CSV数据,但返回的状态非常糟糕。

数据回撤的方式是通过:

$data = explode("\t", $site);
$sID = $data[1];
$sCol = $data[2];

等等。

我可以在回显时使用这些变量,而不是问题。

我真正的问题是上面的数据,我以这种格式返回了几个$sID

20390    Red
20390    Blue
20390    Green
20390    White
20391    Blue
20391    Yellow
20391    Green
20391    White

我想将所有数据合并到单个行中,例如:

20390  Red, Blue, Green, White

类似array_merge东西是理想的,但是不确定哪个函数可以复制它。

好的,就您而言,这就是我要做的:

$data = explode("\t", $site[0]);

$final = array();
foreach ($data as $row) {
    if ($row != 0) {
        $info = explode(" ", $row);
        if (isset($final[$info[0]])) {
            array_push($final[$info[0]], "$info[1], $info[2], $info[3], $info[3]");
        } else {
            $final[$info[0]] = array();
            array_push($final[$info[0]], "$info[1], $info[2], $info[3], $info[3]");
        }
    }
}
var_dump($final);

您可以尝试这样的事情:

   $data = explode("\t", $site);
   $s[$data[1]] = array_key_exists($data[1], $s)?($s[$data[1]].', '.$data[2]):$data[2];
foreach($s as $k => $val){
  $sID = $k;
  $sCol = $val;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM