0

我在数据库表中有 3 行是json数据,我希望它们将它们合并到一个数组中,如何解决?

第 1 行: ["11,22,13"]
第 2 行: ["48"]
第 3 行: ["53,67,70"]

我希望输出为:array(11,22,13,48,53,67,70)

我试过:

$result = $this->db->get_where('table',array('mainpage'=>$mp'));
    $data = array();
    foreach($result->result() as $row){
        $dv = json_decode($row->sbouy);
        $out = array();
        foreach($dv as $idx => $val){
            $out[] = $val;
        }
        echo '<pre>';
        print_r($out); // This is not what I want output
    }

在我的代码中输出为(这不是我想要的输出):

Array
(
    [0] => 11,22,13
)
Array
(
    [0] => 48
)
Array
(
    [0] => 53,67,70
)
4

1 回答 1

0

用这个

    $data = array();
    $out = array();
    foreach($result->result() as $row){
        $dv = json_decode($row->sbouy);

        foreach($dv as $idx => $val){
            $out[] = $val;
        }

    }
    echo '<pre>';
    print_r($out); // This is what you want :)

您必须定义$out外部 foreach。你甚至可以使用array_merge而不是循环

于 2013-02-17T07:40:00.857 回答