Magento:这些方法在哪里

Magento: where are these methods

我正在为 magento 制作简单的插件,但我不知道这些方法在哪里,例如:

class Magentostudy_News_Block_adminhtml_News_Grid extends
    Mage_adminhtml_Block_Widget_Grid
{
    public function __construct() {
        parent::__construct(); //I know that here is called super class constructor, but i don't know sure where $this->setId is called?
        $this->setId('news_list_grid');
        $this->setDefaultSort('created_at');
        $this->setDefaultDir('DESC');
        $this->setSaveParametersIn
    }
}

您可以按照 Magento 的层次结构进行跟踪

 Magentostudy_News_Block_adminhtml_News_Grid 
 extends
 Mage_adminhtml_Block_Widget_Grid which 
 extends  
 Mage_Adminhtml_Block_Widget 

函数 setId 在

的第 36 行附近定义

/app/code/core/Mage/Adminhtml/Block/Widget.php

这被定义为 getId(),我的解释如下:

Magento 和许多其他系统一样使用魔法 setter 和 getter。函数setId是getId的一个神奇方法。在函数 "getId()" 中,它接受一个 "id" 的参数,因此如果您使用 "setId($id) 它会将 setId 设置为您传递给它的 $id。