![](/img/trans.png)
[英]PHP Constructors: Will an “inherited” constructor use Inherited or Parent class overriden methods?
[英]in magento use the method from parent class not the overriden class
在magento php中是否有可能從父類而不是被覆蓋的類中調用該方法,
我有擴展覆蓋(A_CustomOptions_Model_Catalog_Product_Option擴展了Mage_Catalog_Model_Product_Option),並且它覆蓋了構造方法,我還有另一個擴展要使用父類Mage_Catalog_Model_Product_Option的構造。
有沒有辦法做到這一點???
更多說明:
class A_CustomOptions_Model_Catalog_Product_Option extends Mage_Catalog_Model_Product_Option {
protected function _construct() {
parent::_construct();
$this->_init('customoptions/product_option');
}
}
在另一個擴展中,我正在收集選項
public function getOptions($srcId) {
$options = Mage::getModel('catalog/product_option')
->getCollection()
->addTitleToResult(Mage::app()->getStore()->getId())
->addPriceToResult(Mage::app()->getStore()->getId())
->addProductToFilter($srcId)
->addValuesToResult();
return $options;
}
但是,因為此父類Mage_Catalog_Model_Product_Option被覆蓋,所以它不會返回我未覆蓋的父選項。
是的,您可以使用以下代碼調用父構造函數
class A_CustomOptions_Model_Catalog_Product_Option extends Mage_Catalog_Model_Product_Option
{
public function __construct()
{
parent::__construct();
}
}
作為您更新的答案,我認為覆蓋最后加載的類可能不起作用。
希望這一定會為您帶來簡單的OOP概念,
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.