我得到了 Magento 1.7,我得到了这个错误Warning: array_keys() expects parameter 1 to be array, object given in ~/lib/Varien/Object.php on line 117
。它在我安装的插件上,但我不知道如何修复它。
这条线是
$existedShortKeys = array_intersect($this->_syncFieldsMap, array_keys($this->_data));
但是$this->_data
是一个对象......那么它是插件错误还是Magento的错误?
该插件是 Affiliate+ http://www.magestore.com/affiliateplus
===== FIX ====
所以我设法修复它,这只是一个警告,所以我们只在开发人员模式下看到这个问题。
在第app/code/local/Magestore/Affiliateplus/Block/Adminhtml/Banner/Edit/Tab/Form.phtml
7页
$data = array();
if(Mage::getSingleton('adminhtml/session')->getBannerData()){
$data = Mage::getSingleton('adminhtml/session')->getBannerData();
Mage::getSingleton('adminhtml/session')->setBannerData(null);
} elseif ( Mage::registry('banner_data')) {
//$data = Mage::registry('banner_data'); This line must be disabled
}
$obj = new Varien_Object($data);
而已。