可能是重复的问题:
PHP:“Notice:Undefined variable”和“Notice:Undefined index”
最近我打开了错误提示,发现在我将值递增到新数组索引时出现了“Undefined Index”和“Undefined Offset”错误。
这里有一个非常基本的例子。
for($i = 0; $i<10; $i++)
{
$arr['var1'] += $val1[$i];
$arr['var2'] += $val2[$i];
}
在第一次迭代中,出现错误是因为$arr['var1']没有被设置。
我发现检查索引是否被设置以及在数组中使用isset()函数都可以解决这个问题。
if (!isset($arr['var1'])) {
$arr['var1'] = 0;
}
$arr['var1'] += $val1[$i];
• 和 •
在增量for循环之前自动将索引设置为0可以避免错误消息。
我的问题是,我需要修复大约150个这样的问题,最好的方法是什么? 对每个变量进行isset检查,还是预先定义每个变量并将其值设置为0?