【发布时间】:2015-03-03 01:02:04
【问题描述】:
我感到惊讶和困惑。
我有一个完全正常工作的 php Web 应用程序,它抛出一个未定义的偏移警告通知,我不明白为什么。
我使用 Codeigniter 并对模型进行此调用:
$data = $this->clubinfo_model->get_data($club);
返回一个数组,print_r 确认该数组与我预期的一样,其中 '0' 数组包含许多键值对。这是 print_r 的输出:
Array ( [0] => Array ( [clubID] => 18 [shortname] => Woodmere [fullname] => Woodmere Bridge Club [game1day] => x [DOW] => Thursday [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 错误日志报告了两次未定义偏移警告通知。我已经检查过,带有奇怪错误的函数只在项目中的任何地方调用一次。实际上,它只是从提供给默认控制器的地址调用。
比尔
【问题讨论】:
-
请用 print_r 或 var_dump 向我们展示数组的输出
-
谢谢,这里是 print_r 输出: Array ( [0] => Array ( [clubID] => 18 [shortname] => Woodmere [fullname] => Woodmere Bridge Club [game1day] => x [DOW] => 星期四 [game1time] => [game1location] => [director] => [readdirectory] => [offset] => [urlpath] => [webpage] => ) )
-
它在哪里?编辑问题并将其添加到那里
-
是的,它应该可以工作,这就是为什么我开始我的问题时感到惊讶和困惑。
-
如果
print_r($data);为您提供输出,您可以使用:$data[0]["DOW"]访问它,否则您只是犯了错误,或者您的代码中有一个愚蠢的错误,您没有显示!跨度>
标签: php arrays codeigniter error-handling undefined-index