Prestashop Db :: getInstance () -> gt; update () возвращает неопределенную переменную

Я пытался импортировать мой CSV-файл, чтобы обновить мои продукты, он продолжает давать мне время, и через 2 недели мы исключили проблему с сервером (мы попытались изменить max_execution_time, memory_limit или что-то, что, по нашему мнению, могло бы вызвать это)

Журналы ошибок показали следующую ошибку:
Замечание 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);
}
}

}

Самое смешное, что этот код работал до тех пор, пока мы не переместили хостинг на облачный хостинг, и каждый раз, когда мы пытались загрузить CSV-файл более чем на 300 строк, он просто отключался по тайм-ауту, и журнал ошибок будет отображать вышеуказанную ошибку!

Мне интересно, нужен ли db_prefix для Db :: getInstance () -> update ()
Но я прочитал, что это автоматически добавит, когда мы используем этот экземпляр.
Я не уверен. Я пытался все, что я думал, что это будет работать, но это не так.

Любая идея?

0

Решение

  1. Из того, что я вижу в коде, переменная $ return не определена в двух назначаемых строках
  2. Может быть, сценарий действительно истекло, но это может быть подтверждено в процессе отладки. Код выше, кажется, в порядке.
  3. Префикс db автоматически добавляется в вашем случае.
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]