0

データベース テーブルにjsonデータである 3 つの行があり、それらを配列にマージしたいのですが、どうすれば修正できますか?

行 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 :)

$outforeach の外側で定義する必要があります。ループの代わりに、array_mergeを使用することもできます

于 2013-02-17T07:40:00.857 に答える