我填充数组的函数:
protected function _getSimpleProductFromQuoteItem($QuoteItem)
{
$simpleProduct = array();
$simpleProduct['size'] = (string)$QuoteItem->Size;
$simpleProduct['shipping_attribute'] = $QuoteItem->Type;
return $simpleProduct;
}
我正在做$QuoteItem->Type
例如 - 我得到了一个XML节点的值,但这是有效的,我说这只是为了澄清。
所以,我在使用这个功能的地方:
protected function _setSimpleProductsItemsShippingAttributes($simpleProducts)
{
Mage::log('I reached the "foreach" ');
foreach($simpleProducts[$simpleProduct['shipping_attribute']] as $item)
{
Mage::log('ASD: '.$item);
但我得到ERR (3): Notice: Undefined variable: simpleProduct
以及ERR (3): Notice: Undefined index:
和ERR (3): Warning: Invalid argument supplied for foreach()
作为 foreach 的行。
我也尝试了$simpleProducts->$simpleProduct['...
,但后来我收到错误,我正在尝试访问非对象。
所以我试图访问simpleProduct['shipping_attribute']
中包含的这个值,但我似乎没有成功。想法?
更新 我得到填充的$ simpleProducts数组并将其传递给我的函数是:
$simpleProducts = $this->_getSimpleProductsAsImportArray($Product, $simpleProductDefault);
//------
$this->_setSimpleProductsItemsShippingAttributes($simpleProducts);
die();
//------
而_getSimpleProductsAsImportArray(atr1, atr2)
是调用填充数组的函数的那个。我知道它是扭曲的,但这就是项目的方式以及我是如何得到它的。无论如何,直到我的功能正常工作,所以不要偶然发现。
答案 0 :(得分:1)
您应该像这样使用它:
foreach($simpleProducts as $simpleProduct) {
$simpleProduct['shipping_attribute'];
}
答案 1 :(得分:0)
你也可以试试这个:
foreach($simpleProducts as $key->$value) {
$key[$value];
}