如何处理“未定义的索引:”

时间:2016-01-05 17:09:11

标签: php

if(!isset($aProdcut[$eachYear][$store][$base])){
  $aProdcut[$eachYear][$store][$base] = 0;
}
$aProduct[$eachYear][$store][$base] += $row['total_price'];

未定义的索引:MARC。 MARC来自$ base。

谁可以给我一些提示?

2 个答案:

答案 0 :(得分:0)

你有一个错字$ aProdcut vs $ aProduct

答案 1 :(得分:-1)

如果您有一个$aProduct变量(array并且索引值为$eachYear,则该代码不应导致未定义的索引,而该变量又是另一个数组,其索引值为$store,因为在这种情况下

isset($aProdcut[$eachYear][$store])

true。如果它是true并且它没有$base索引值,那么它将被创建并初始化为0.后来,当您使用它时,它肯定会存在。因此,问题可能是$aProduct[$eachYear]不存在或$aProduct[$eachYear][$store]未设置。确保一切都存在,而不仅仅是最里面的索引,然后问题可能会得到解决。如果问题仍然存在,那么你应该检查是否有其他因素导致它,例如多线程。