Php Prestashop Db::getInstance()->;update()返回未定义的变量

Php Prestashop Db::getInstance()->;update()返回未定义的变量,php,csv,import,prestashop,prestashop-1.5,Php,Csv,Import,Prestashop,Prestashop 1.5,我尝试导入我的CSV文件来更新我的产品,它一直给我时间,两周后,我们排除了服务器的问题(我们尝试更改最大执行时间、内存限制或任何我们认为可能导致此问题的内容) 错误日志显示以下错误: PHP注意:未定义变量:返回/var/www/vhosts/22/xxxxxx/webspace/httpdocs/xxxxxx/controllers/admin/AdminImportController.PHP,第1518行 这是我们添加的自定义代码,用于对产品列表进行排序; 下面是代码 $prod_pos

我尝试导入我的CSV文件来更新我的产品,它一直给我时间,两周后,我们排除了服务器的问题(我们尝试更改最大执行时间、内存限制或任何我们认为可能导致此问题的内容)

错误日志显示以下错误: PHP注意:未定义变量:返回/var/www/vhosts/22/xxxxxx/webspace/httpdocs/xxxxxx/controllers/admin/AdminImportController.PHP,第1518行

这是我们添加的自定义代码,用于对产品列表进行排序; 下面是代码

$prod_pos = get_object_vars($product);

            if (isset($info['position']) && !empty($info['position']))
            {

                $update_prod_cat_id = array();
                for ($i = 0; $i < count($product->category); $i++)
                {
                    if (is_numeric($product->category[$i])){
                        $return &= Db::getInstance()->update('category_product', array(
                            'position' => $info['position'],
                        ), '`id_category` = '.(int)$product->category[$i].' AND `id_product` = '.(int)$product->id);
                    }
                    else
                    {
                        $update_prod_cat_id[] = Category::searchByName($default_language_id, trim($product->category[$i]), true);
                        $return &= Db::getInstance()->update('category_product', array(
                            'position' => $info['position'],
                        ), '`id_category` = '.(int)$pos_cat_id['id_category'].' AND `id_product` = '.(int)$product->id);
                    }
                }

            }
$prod\u pos=get\u object\u vars($product);
if(设置($info['position'])和&!空($info['position']))
{
$update_prod_cat_id=array();
对于($i=0;$icategory);$i++)
{
如果(是数字($product->category[$i])){
$return&=Db::getInstance()->update('category\u product',数组(
'position'=>$info['position'],
),'id\u category`='(int)$product->category[$i].'和'id\u product`='(int)$product->id);
}
其他的
{
$update_prod_cat_id[]=Category::searchByName($default_language_id,trim($product->Category[$i]),true);
$return&=Db::getInstance()->update('category\u product',数组(
'position'=>$info['position'],
),'id\u category`='(int)$pos\u cat\u id['id\u category'].'和'id\u product`='(int)$product->id);
}
}
}
有趣的是,这段代码一直在工作,直到我们将主机移动到云主机,然后每次我们试图上传超过300行的CSV文件时,它就会超时,错误日志将显示上述错误

我想知道db::getInstance()->update()是否需要db_前缀 但我读到它会自动把它当我们使用这个实例。 我不确定。我尝试了所有我认为有效的方法,但是没有

有什么想法吗

  • 从我在代码中看到的情况来看,变量$return在被分配的两行上是未定义的
  • 脚本可能确实超时,但这可以在调试过程中确认。上面的代码似乎还可以
  • db前缀将自动添加到您的案例中