Php 将同一行循环两次的数组

Php 将同一行循环两次的数组,php,arrays,loops,foreach,Php,Arrays,Loops,Foreach,我对foreach语句有困难,它将相同的条目循环两次。我曾尝试在foreach之后放置unset(),但这并不能阻止问题的发生。任何想法或建议都很好 $Index = 0; foreach($orderDetails as $ShowDetails){ $sub_total += $ShowDetails['total_price']; $ProdQ = "SELECT * FROM products WHERE product_id='".$ShowDetails['product_id']

我对foreach语句有困难,它将相同的条目循环两次。我曾尝试在foreach之后放置unset(),但这并不能阻止问题的发生。任何想法或建议都很好

$Index = 0;
foreach($orderDetails as $ShowDetails){
$sub_total += $ShowDetails['total_price'];

$ProdQ = "SELECT * FROM products WHERE product_id='".$ShowDetails['product_id']."'";
$ProdDet = $db->siri_query($ProdQ);     
$productData = array();

while($rowPr = $db->siri_fetch_array($ProdDet)){
    array_push($productData,$rowPr);
}

$productTitle = stripslashes($productData[0]['product_name']);

$ProdPrcQ = "SELECT UID FROM product_prices WHERE product_id='".$ShowDetails['product_id']."' and size_id='".$ShowDetails['size_id']."' and color_id='".$ShowDetails['color_id']."'";
$ProdPrc = $db->siri_query($ProdPrcQ);      
$productData1 = array();

while($rowPrc = $db->siri_fetch_array($ProdPrc)){
    array_push($productData1,$rowPrc);
}

$productUID = stripslashes($productData1[0]['UID']);

$colorId = $ShowDetails['color_id'];
if($colorId!='0'){
    $ColQ = "SELECT color_title FROM colors WHERE id='".$colorId."'";
    $ColDet = $db->siri_query($ColQ);       
    $colorData = array();
    while($rowCl = $db->siri_fetch_array($ColDet)){
        array_push($colorData,$rowCl);
    }

    $colorTitle = $colorData[0]['color_title'];
}else{
    $colorTitle = '';
}

$sizeId = $ShowDetails['size_id'];
if($sizeId!='0'){
    $SzeQ = "SELECT title FROM sizes WHERE id='".$sizeId."'";
    $SzeDet = $db->siri_query($SzeQ);       
    $sizeData = array();
    while($rowSze = $db->siri_fetch_array($SzeDet)){
        array_push($sizeData,$rowSze);
    }

    $sizeTitle = $sizeData[0]['title'];
}else{
    $sizeTitle = '';
}

$prdDescr = $productTitle. ' ' .$sizeTitle. ' ' .$colorTitle;
$orderItemsRec[$Index] = array('ShipQuantity' => $ShowDetails['quantity'],'UnitPrice' => $ShowDetails['unit_price'],'Total' => $ShowDetails['total_price'],'Item' => array('UID' => $productUID),'Description' => $prdDescr,'TaxCode' => array('UID' => '7d1f2e99-ffe0-4463-9c29-61d078b392d3'));
$Index++;

}

$PrLineVal = var_export($orderItemsRec);
输出如下所示,它自身完全重复两次:

 array ( 
    0 => array ( 
        'ShipQuantity' => '1',
        'UnitPrice' => '11.90', 
        'Total' => '11.90', 
        'Item' => array ( 'UID' => '01fa9c26-9fb4-4fa0-8066-1637e5739d03', ), 
        'Description' => 'Pearl Solutions 25g Synstar Orange',
        'TaxCode' => array ( 'UID' => '7d1f2e99-ffe0-4463-9c29-61d078b392d3', ),
        ),
    1 => array ( 
        'ShipQuantity' => '2', 
        'UnitPrice' => '19.37', 
        'Total' => '38.74', 
        'Item' => array ( 'UID' => 'b45035a8-f111-477a-b153-0f953b0a717e', ), 
        'Description' => 'Art Oil 01 25g ', 
        'TaxCode' => array ( 'UID' => '7d1f2e99-ffe0-4463-9c29-61d078b392d3', ), 
        ), 
    )

array ( 
    0 => array ( 
        'ShipQuantity' => '1',
        'UnitPrice' => '11.90',
        'Total' => '11.90', 
        'Item' => array ( 'UID' => '01fa9c26-9fb4-4fa0-8066-1637e5739d03', ), 
        'Description' => 'Pearl Solutions 25g Synstar Orange', 
        'TaxCode' => array ( 'UID' => '7d1f2e99-ffe0-4463-9c29-61d078b392d3', ), 
        ), 
    1 => array ( 
        'ShipQuantity' => '2', 
        'UnitPrice' => '19.37', 
        'Total' => '38.74', 
        'Item' => array ( 'UID' => 'b45035a8-f111-477a-b153-0f953b0a717e', ), 
        'Description' => 'Art Oil 01 25g ', 
        'TaxCode' => array ( 'UID' => '7d1f2e99-ffe0-4463-9c29-61d078b392d3', ), 
        ), 
    )