pro-dev
@pro-dev

Почему ругается Undefined offset: 18145?

Всем привет. Что не так в добавлении массива статистики? Смотрю в экран вижу фигу)

$companyStatistics = [];
$comViews = CompanyViewsTemp::find()
				->where(['between', 'viewed_at', $this->start, $this->end])
				->asArray()
				->all();

foreach ($comViews as $view) {
       $companyStatistics[$view['com_id']]['company_views'][$view['ip']]++;
}


ругается Undefined offset: 18145 в строке
//$view['com_id'] = 18145
$companyStatistics[$view['com_id']]['company_views'][$view['ip']]++;


UPD: на версии php5.6 работало, а на php7.4 стало выдавать ошибку
  • Вопрос задан
  • 56 просмотров
Решения вопроса 2
GennadyS
@GennadyS
Программист, философ
Вы пытаетесь сделать ++ к несуществующему элементу в массиве $companyStatistics. Сначала проверьте, существует ли элемент.
UPD немного запутался в Ваших квадратных скобках
Ответ написан
aleksejjjj
@aleksejjjj
Очевидно что у вас
1. $view['com_id'] === 18145 или $view['ip'] === 18145
2. При этом элемента $companyStatistics[18145] или $companyStatistics[$view['com_id']]['company_views'][18145] не существует.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы