php - 嵌套foreach怎麼合併遍歷結果?
我想大声告诉你
我想大声告诉你 2017-05-16 13:15:04
0
2
809

嵌套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;
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板