虽然存在isset(),但未定义的偏移量错误

时间:2015-07-22 11:28:59

标签: php arrays merge array-merge

根据标题,我收到以下错误:

Notice: Undefined offset: 2 in C:\xampp\htdocs\phpscripts\download-test.php on line 412

第412行是:

 if(isset($agent[2])) {
      $agents[$agent[0]][2] += $agent[2];
 } else {
      $agents[$agent[0]][2] = 0;
 } <---- line 412

所以,即使我检查值是否设置,我仍然设法得到此错误。任何人都有一些想法?

1 个答案:

答案 0 :(得分:2)

你正在做增量&amp;将$agents[$agent[0]][2]的值一起分配。

$agents[$agent[0]][2] += $agent[2]; 

相同
$agents[$agent[0]][2] = $agents[$agent[0]][2] + $agent[2];

首先需要设置$agents[$agent[0]][2]。检查应该是 -

if(isset($agent[2]) && isset($agents[$agent[0]][2])) {
相关问题