我在电子商务项目中有 2 个对象数组(内置 Code Igniter),一个是产品对象数组,一个是销售项目对象数组,带有产品 ID 和折扣金额。我需要比较这些数组,以便可以在出售的商品中设置新价格,但我似乎无法正确编码循环。这是我当前的代码:
private function checkSalesProducts($query) {  //$query is an array of product objects 
    $this->db->select("sale_product, sale_discount");
    $salesItems = $this->db->get("sale_items");
    foreach($salesItems->result() as $salesItem)
    {
        for($i=0; sizeof($query); ++$i)
        {
            if($salesItem->sales_product == $query[$i]->prod_id)
            {
                $query[$i]->prod_price = $query[$i]->prod_price * (1 - $salesItem->sales_discount);
                $query[$i]->sale_item = true;
                break;
            }
        }
    }
    echo "<pre>";
    print_r($query);
    echo "</pre>";
}
有任何想法吗?