У меня есть следующий код в моем веб-проекта Symfony 2 в одном из моих репозиториях:Undefined смещение: 0 с PHP массива
$result = $qb->getQuery()->getResult();
$converted = $this->transformArray($result);
return $converted[0];
Моя проблема:
Я получаю следующую ошибку, которая указывает к последней строке:
Notice: Undefined offset: 0
фона:
Моя функция transformArray()
выполняет следующие действия:
private function transformArray($rows)
{
foreach ($rows as $i => $row) {
$rows[$i]['hexcolor'] = $this->convertColor($row['colorR'], $row['colorG'], $row['colorB']);
};
return $rows;
}
После этой операции, моя переменная $converted
содержит массив, как это только один результат:
array (
0 =>
array (
'subjectId' => 1234,
'subjectName' => 'English',
'hexcolor' => '#ff00'
)
)
Может кто-нибудь объяснить, почему делать $converted[0]
(= пытается для доступа к индексу 0) приводит к неопределенной ошибке смещения? Вставка вывода массива в PHPFiddle и попытка доступа к индексу 0 отлично работает. Почему это не в моем проекте Symfony 2?
Опубликуйте transformArray() значение –
Убедитесь, что '$ result' имеет значение (то есть, ваш запрос не отсутствие)? – WillardSolutions
Я бы: Чтобы увидеть первую запись в любом массиве: 'reset $ convert;' then: 'current ($ convert);' получит значение первой записи и 'key ($ convert);' с получением индекса этой записи. Это работает для всех массивов PHP. –