Я удивлен и смущен.
У меня есть полностью работающее веб-приложение php, которое выдает предупреждение о неопределенном смещении, и я не могу понять, почему.
Я использую Codeigniter и у меня есть этот вызов модели:
$data = $this->clubinfo_model->get_data($club);
Возвращается массив, и print_r подтверждает, что массив соответствует ожиданиям с массивом ‘0’, содержащим несколько пар ключ-значение. Вот вывод print_r:
Array ([0] => Array ([clubID] => 18 [shortname] => Woodmere [полное имя] => Woodmere Bridge Club [game1day] => x [DOW] => четверг [game1time] => [game1location] = > [Director] => [readdirectory] => [offset] => [urlpath] => [webpage] =>))
Затем я делаю это назначение:
$DOW = $data['0']['DOW'];
$ DOW получить день недели.
Работает отлично.
Но php сообщает об ошибке в строке назначения и говорит:
ОШИБКА — 2015-01-05 05:50:00 -> Серьезность: Уведомление -> Неопределенное смещение: 0 /home3/billhogs/public_html/ccbridgeclub/application/controllers/scores.php 71
Извлечение индекса «0» дает ожидаемые результаты — программа не работает.
Так, что происходит?
Я предполагаю, что это не связано, но журнал ошибок Codeignighter дважды сообщает о предупреждении о неопределенном смещении. Я проверил, и функция со странной ошибкой вызывается только один раз в любом месте проекта. На самом деле, он вызывается только с адреса, переданного на контроллер по умолчанию.
Билл
при назначении вместо $ data [‘0’] [‘DOW’] пишите $ data [0] [‘DOW’]
Других решений пока нет …