php - 嵌套foreach怎么合并遍历结果?
我想大声告诉你
我想大声告诉你 2017-05-16 13:15:04
0
2
828

嵌套foreach,首先根据单据id(billId)遍历出对应单据下对应的明细列表,例如$v2='00001'和'00002',然后根据得到的明细数据(例如00001下有50条记录,00002下有60条记录),输出表格,但是得到的结果总是00002下的60条记录,怎么把两次遍历的结果拼接在一起呢?

foreach ($danju as $k2 => $v2){
    $url_mingxi="http://xxxx.xxxx.com/purOrder/getOrderDetailInfo.action?billId=$v2";
    $arr_mingxi=curl_get($url_mingxi,$cookie_jar,$UserAgent);

    foreach($arr_mingxi as $keys => $values){

    $html .= "<tr><td>{$arr_mingxi[$keys]['spbmhx']}</td><td>{$arr_mingxi[$keys]['pluCode']}</td><td>{$arr_mingxi[$keys]['pluName']}</td></tr>";    

    }    
}

echo $html;
我想大声告诉你
我想大声告诉你

全部回复(2)
Ty80

在内层循环合并。具体就是去重合并

黄舟

建议你把内层代码封装起来,然后再去输出,参考下面代码

    function getData($id){
        $html = '';

        $url_mingxi="http://xxxx.xxxx.com/purOrder/getOrderDetailInfo.action?billId=". $id;
        $arr_mingxi=curl_get($url_mingxi,$cookie_jar,$UserAgent);

        if($arr_mingxi){
            foreach($arr_mingxi as $keys => $values){
                $html .= "<tr><td>{$arr_mingxi[$keys]['spbmhx']}</td><td>{$arr_mingxi[$keys]['pluCode']}</td><td>{$arr_mingxi[$keys]['pluName']}</td></tr>";    
            }       
        }
        return $html;     
    }

    $rs = '';
    foreach ($danju as $k2 => $v2){
        $rs .= getData($v2);
    }

    echo $rs;
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板