2015-09-07 29 views
0

我有點困惑的函數:Magento的requestShippingRates說法

public function requestShippingRates(Mage_Sales_Model_Quote_Item_Abstract $item) 
{ 
    /** @var $request Mage_Shipping_Model_Rate_Request */ 
    $request = Mage::getModel('shipping/rate_request'); 
    $request->setAllItems($item ? array($item) : $this->getAllItems()); 
} 

我知道$item是一個安排,但是這是什麼Mage_Sales_Model_Quote_Item_Abstract

+1

這是「類型暗示」的概念。它會告訴你關於你的參數類型。 $ item是指Mage_Sales_Model_Quote_Item_Abstract類。 – skparwal

回答

0

對於類型提示看reference

被引用的頁面上的一個例子說明:

<?php 
class C {} 
class D extends C {} 

// This doesn't extend C. 
class E {} 

function f(C $c) { 
    echo get_class($c)."\n"; 
} 

f(new C);//C 
f(new D);//D 
f(new E);//throws exception 
?> 

原因的Magento是這樣做的,因爲你可以使用一個方法都獲得運費對於一件或全部貨件(當傳遞無效數據時)。