Как устранить ошибку?

Здравствуйте! Сайт выдает ошибку:
2019-06-16 12:04:02 - PHP Warning:  array_pop() expects parameter 1 to be array, null given in /var/www/data/www/catalog/model/module/criteo.php on line 48


48 строка:
$category_id = (int)array_pop($parts);

Весь файл:
https://pastebin.com/CaRm6zbF

Как устранить данную ошибку?
  • Вопрос задан
  • 118 просмотров
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Массив $parts образуется из значения $this->request->get['path'] путём разбивания этого значения на части по символу подчёркивания. Если $this->request->get['path'] будет пустым, то и $parts будет пустым, и будет ошибка.
Поскольку дальше по скрипту $category_id разрешено быть нулевым - добавьте $parts = array(0); перед 45-ой строкой, ошибка исчезнет. А правильнее сделать:
//-- GET ALL PRODUCTS FILTER BY CATEGORY
if(isset($this->request->get['path'])) {
$parts = explode('_', (string)$this->request->get['path']);
$category_id = (int)array_pop($parts);
} else {
$category_id = 0;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы