簡體   English   中英

訪問數組的成員

[英]access a member for an array

我填充數組的函數:

protected function _getSimpleProductFromQuoteItem($QuoteItem)
    {
        $simpleProduct = array();
        $simpleProduct['size'] = (string)$QuoteItem->Size;
        $simpleProduct['shipping_attribute'] = $QuoteItem->Type;

        return $simpleProduct;
    }

例如,在我執行$QuoteItem->Type的地方-我得到了XML節點的值,但這是$QuoteItem->Type ,我說的只是為了澄清。

因此,我在哪里使用此功能:

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: simpleProductERR (3): Notice: Undefined index:ERR (3): Warning: Invalid argument supplied for foreach()foreachERR (3): Warning: Invalid argument supplied for foreach()

我也嘗試了$simpleProducts->$simpleProduct['...但是我收到錯誤消息,我試圖訪問一個非對象。

因此,我嘗試訪問此值,該值包含在simpleProduct['shipping_attribute']但我似乎未成功。 想法?

更新我獲得填充的$ simpleProducts數組並將其傳遞給我的函數的位置是:

$simpleProducts = $this->_getSimpleProductsAsImportArray($Product, $simpleProductDefault);
        //------
        $this->_setSimpleProductsItemsShippingAttributes($simpleProducts);
        die();
        //------

_getSimpleProductsAsImportArray(atr1, atr2)是調用填充數組的函數的函數。 我知道它是扭曲的,但這就是項目的方式以及我的獲得方式。 無論如何,在我的功能正常運行之前,所有事情,因此請不要誤解。

您應該這樣使用它:

foreach($simpleProducts as $simpleProduct) {
    $simpleProduct['shipping_attribute'];
}

您也可以嘗試以下操作:

foreach($simpleProducts as $key->$value) {
    $key[$value];
} 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM