有人可以解释 Magento 中的单例吗?

jkp*_*phl 1 singleton magento

我在这里和谷歌上阅读了大量的帖子,出于某种原因,我仍然不太明白单例与 Magento 的关系。例如,我创建了一个观察者来侦听订单保存事件并执行一些自定义逻辑。根据我在另一个线程中收到的建议,我将我的班级设置为单例。我怎么知道这是正确的?除了单例之外,还有其他的可能吗?

 <frontend>
    <events>
        <checkout_type_onepage_save_order_after>
            <observers>
                <reducesetinventory_save_order_observer>
                    <class>MyModule_ReduceSetInventory_Model_Observer</class>
                    <method>checkout_type_onepage_save_order_after</method>
                    <type>singleton</type>
                </reducesetinventory_save_order_observer>
            </observers>
        </checkout_type_onepage_save_order_after>
    </events>
</frontend>
<global>
    <models>
        <myname_reducesetinventory>
            <class>MyName_ReduceSetInventory_Model_Observer</class>
        </myname_reducesetinventory>
    </models>
</global>
Run Code Online (Sandbox Code Playgroud)

use*_*772 5

如果模型已经实例化,单例将返回该实例,否则将创建一个新实例。非常方便,因为在某些情况下您不想创建另一个要创建的实例(例如配置、订单、报价等)。