【问题标题】:combine array php组合数组php
【发布时间】:2013-02-17 10:27:37
【问题描述】:

在我的输出代码如下:

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

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

    $result = $this->db->get_where('table',array('mainpage'=>$mp'));
    $data = array();
    $out = array();
    foreach($result->result() as $row){
        $dv = json_decode($row->subpage);
        $out = array_merge($dv, $out);
    }
    return    $out;

在我的数据库表行是:(json数据)

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

如何将 php 代码固定为array(11,22,13,48,53,67,70) 输出?

【问题讨论】:

    标签: php arrays codeigniter


    【解决方案1】:
    $result = $this->db->get_where('table',array('mainpage'=>$mp));
    $data = array();
    $out = array();
    
    foreach($result->result() as $row){
            $dv = json_decode($row->subpage);
    
            $flat = array();
    
            foreach ( $dv as $item ) {
                $flat = array_merge( $flat, explode( ',', $item ) );
            }
    
            $out = array_merge( $out, $flat );
    }
    
    return $out;
    

    【讨论】:

    • 抱歉,缺少逗号。固定
    • 好的,但我仍然有错误,请参阅:pastebin.com/i9k9HJkE 第 132 行是你的:$out = array_merge($out, explode( ',', $dv)); ?
    • 是的,我明白了.. 请查看更新后的答案是否适合您。
    【解决方案2】:
    $array = array (array (53, 67, 70), array (48), array (11, 22, 13));
    $combined_array = call_user_func_array ('array_merge', $array);
    

    【讨论】:

      猜你喜欢
      • 2010-11-28
      • 2011-04-14
      • 2010-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多