Ошибка trying to access array offset on value of type null. как добавить проверку?
ВСЕМ ПРИВЕТ!
Модуль Codeigniter , Урок 8: CRUD: страница редактирования новости.
При нажатие на кнопку "Редактировать новость" выскакивает ошибка "Попытка получить доступ к смещению массива по значению типа null" в 3 строках:
$data['title_news'] = $data['news_item']['title'];
$data['content_news'] = $data['news_item']['text'];
$data['slug_news'] = $data['news_item']['slug'];
Документ News.php (контроллер). В базе данных новость обновляется.
Этот вопрос неоднократно обсуждался на этом ресурсе (
/ru/qa/kak-ispravit-osibku-popytka-polucit-dostup-k-smeseniu-massiva-po-znaceniu-tipa-null--ja-vi/
/ru/qa/ne-idet-redaktirovanie-cto-delat-t98phy/
/ru/qa/osibka-trying-to-access-array-offset-on-value-of-type-null-kak-ispravit-rt7jlz/ ).
ОТВЕТ НЕ НАЙДЕН на этот вопрос. Написаны предложения о переустановке XAMPP и попробовать исходный код Сергея Никонова взять.
Я на форумах уже второй день ищу решение этой задачи.
Нашел я такие вот пояснения и предложение, как избавиться от проблемы:
"ошибка возникает потому, что происходит попытка считывать что-то из массива по ключу, но то, к чему идет обращение как к массиву, в данный момент - "нулевое"" можно перед присвоением выполнять проверку на "пустое значение/нулевое", например такую:
$data['title_news'] = (empty($data['news_item']['title'])) ? $data['news_item']['title'] : NULL ;
Добавил эту строку в эту часть кода:
public function edit($slug = NULL) {
$data['title'] = "редактировать новость";
$data['news_item'] = $this->news_model->getNews($slug);
$data['title_news'] = (empty($data['news_item']['title'])) ? $data['news_item']['title'] : NULL;
$data['title_news'] = $data['news_item']['title'];
$data['content_news'] = $data['news_item']['text'];
$data['slug_news'] = $data['news_item']['slug'];
......
Ошибка не исчезла, только уже в 4 строках, включаю добавленную выше.
ПОМОГИТЕ РАЗОБРАТЬСЯ С ДОПОЛНИТЕЛЬНОЙ ПРОВЕРКОЙ, о которой речь шла выше!
СПАСИБО!