合并具有json值的3行

时间:2013-02-17 07:33:10

标签: php arrays json codeigniter

我在数据库表中有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
)

1 个答案:

答案 0 :(得分: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 :)

您必须在foreach之外定义$out。您可以使用array_merge

代替循环