I'm trying to run magmi product import plugin on a Magento app which is running on an aws ec2 instance that has NGINX & HHVM on it. When I try to run the the magmi product import app on Magento I get the below server error in my hhvm error log.
/var/log/hhvm/error.log
\nCatchable fatal error: Object of class Magmi_ProductImportEngine could not be converted to string in /var/www/qa-hoi/magmi-importer/inc/magmi_mixin.php on line 9
This is the magmi_mixin.php file
<?php
class Magmi_Mixin
{
protected $_callers;
public function bind($caller)
{
$this->_callers[]=$caller;
$this->_callers=array_unique($this->_callers); // LINE 9
}
public function unbind($caller)
{
$ks=array_keys($this->_callers,$caller);
if(count($ks)>0)
{
foreach($ks as $k)
{
unset($this->_callers[$k]);
}
}
}
public function __call($data,$arg)
{
if(substr($data,0,8)=="_caller_")
{
$data=substr($data,8);
}
for($i=0;$i<count($this->_callers);$i++)
{
if(method_exists($this->_callers[$i],$data))
{
return call_user_func_array(array($this->_callers[$i],$data), $arg);
}
else
{
die("Invalid Method Call: $data - Not found in Caller");
}
}
}
}
Any idea how I should go about solving this? Should I update my php.ini file?
What could be causing the fatal error. It is not occurring on my local machine which has Apache.
UPDATE
I installed HHVM on my local machine and ran the xdebug. It seems that the $caller
object in the magmi file contains several arrays that cannot be evaluated. See screenshot below: