在观察者对象Magento中打印所有avalilabe信息

时间:2015-10-16 07:18:17

标签: php magento

我想在观察者对象中打印所有可用信息,

假设我在app / local / Namespace / Modulename / etc / config.xml中有一个事件:

Config.xml

<checkout_cart_product_add_after>
                <observers>
                    <namespace_modulename_checkout_cart_product_add_after_observer>
                        <type>singleton</type>
                        <class>Namespace_Modulename_Model_Observer</class>
                        <method>onAddToCart</method>
                    </namespace_modulename_checkout_cart_product_add_after_observer>
                </observers>
            </checkout_cart_product_add_after>

此事件将在Observer.php中调用onAddToCart函数: 此事件成功调用了函数。 的 Observer.php:

public function onAddToCart(Varien_Event_Observer $observer)
    {
        $product = $observer->getEvent()->getProduct();

        $name = $product->getName();
        $sku = $product->getSku();
        Mage::log(
            "{$name} ({$sku}) updated",
            null,
            'product-updates.log'
        );
    }

我想在onAddToCart函数中做的事情是这样的:

public function onAddToCart(Varien_Event_Observer $observer)
    {
        $test4 = var_dump($observer->getDataObject()->getData());
        Mage::log(
            "{$test4}",
            null,
            'product-updates.log'
        );
    }

问题: 当我做的时候

$test4 = var_dump($observer->getDataObject()->getData());
            Mage::log(
                "{$test4}",
                null,
                'product-updates.log'
            );

我在system.log文件中收到此错误:

Notice: Array to string conversion  in /opt/lampp/htdocs/magento2/app/code/local/Namespace/Modulename/Model/Observer.php on line 62

并且它不使用var_dump函数打印任何内容, 我想要的是观察者对象中的所有可用信息都会自动打印,就像使用print_r打印数组一样,但是我在$ observer对象上尝试了var_dump和print_r并没有成功。

任何帮助都将不胜感激。

编辑:使用print_r而不是var_dump,

$test4 = print_r($observer->getDataObject()->getData(), true);
Mage::log(
    "{$test4}",
    null,
    'product-updates.log'
);

仍然无效。

0 个答案:

没有答案
相关问题