这是我的代码:当没有数据从数据库检索时发出警告..如何解决这个问题?我不知道如何更改多个数组。
foreach ($users_id_array[$region_chart2][$country_chart2] as $key) {
$query_diff2 = "SELECT ut_lp_marks.obj_id, object_data.title, read_event.spent_seconds, " .
"read_event.read_count, ut_lp_marks.status, ut_lp_marks.percentage, ut_lp_marks.u_comment FROM ut_lp_marks ".
"LEFT JOIN object_data ON (object_data.obj_id = ut_lp_marks.obj_id) ".
"LEFT JOIN read_event ON (read_event.obj_id = object_data.obj_id AND read_event.usr_id = ut_lp_marks.usr_id) ".
"WHERE ut_lp_marks.usr_id=$key AND object_data.type = 'crs'";
$result_diff2 = mysql_query($query_diff2);
while($rec_diffcourse2 = mysql_fetch_assoc($result_diff2))
{
if ($rec_diffcourse2['status'] == 0) {
$total_diffna1++;
}
if ($rec_diffcourse2['status'] == 1) {
$total_diffinprogress1++;
}
if ($rec_diffcourse2['status'] == 2) {
$total_diffpassed1++;
}
if ($rec_diffcourse2['status'] == 3) {
$total_difffailed1++;
}
}
$no_test_country++;
}
答案 0 :(得分:1)
应该这样写:
if (!empty($users_id_array[$region_chart2][$country_chart2])) {
foreach ($users_id_array[$region_chart2][$country_chart2] as $key) {
除非你真的应该使用$ val而不是$ key
正确的语法是
foreach($ array as $ key - > $ val)
答案 1 :(得分:0)
请勿使用foreach中的尺寸:移除[$region_chart2][$country_chart2]