【发布时间】:2010-11-14 18:34:27
【问题描述】:
你好
这是我的代码....问题出在$product 变量处。
有没有办法解决这个问题?
它被定义了两次并导致问题覆盖
问题已更新
$productsIDs = array();
foreach ($rowsProducts as &$product) {
$product["features"] = &$productsFeatures[$product["product_id"]];
$productsIDs[] = $product["product_id"];
}
//GET STOCK FEATURES
$sqlIds=implode(",",$productsIDs);
$sql="SELECT * FROM eshop_products_stock WHERE product_id IN ($sqlIds)";
$productsStock = $db->getRecordSet($sql);
$sql="SELECT * FROM `eshop_features_valuestr` WHERE feature_id IN ".
"(SELECT DISTINCT feature1_id FROM eshop_products_stock WHERE product_id IN ($sqlIds))" .
" AND language_code='$lang'";
$productsSizes = $db->getRecordSet($sql);
$sql="SELECT * FROM `eshop_features_valuestr` WHERE feature_id IN ".
"(SELECT DISTINCT feature2_id FROM eshop_products_stock WHERE product_id IN ($sqlIds))".
" AND language_code='$lang'";;
$productsColors = $db->getRecordSet($sql);
$productsSizesV=array();
foreach($productsSizes as $size)
{
$productsSizesV[$size["value"]]=$size["title"];
}
$productsColorsV=array();
foreach($productsColors as $color)
{
$productsColorsV[$color["value"]]=$color["title"];
}
//Group by product stock
$productsStockV=array();
$product="";
foreach($productsStock as $product)
{
$productsStockV[$product["product_id"]]["sizes"][]=$product["feature1_value"];
$productsStockV[$product["product_id"]]["colors"][]=$product["feature2_value"];
}
【问题讨论】:
-
问题出在哪里?
-
没有必要在
foreach循环之前“声明”$product;你应该删除$product=""这行,因为它只会让事情变得混乱。