eコマースプロジェクト(Code Igniterで構築)に2つのオブジェクトの配列があります。1つは製品オブジェクトの配列で、もう1つは販売アイテムオブジェクトの配列で、製品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>";
}
何か案は?