注意:尝试在PHP中递增关联数组时未定义的索引

die*_*sel 5 php arrays

每次发生重复变量时,我都会尝试增加$ variable的值.我不确定这在语法上是否正确,但我认为这在语义上是正确的.var_dump似乎吐出正确的输出,但我得到这个错误:注意:未定义的索引...

$newarray = array();
foreach ($array as $variable)
{
    $newarray[$variable]++; 
    var_dump($newarray);
}
Run Code Online (Sandbox Code Playgroud)

$ array =(0 => h,1 => e,2 => l,3 => 1,4 => o);

目标:

'h' => int 1
'e' => int 1
'l' => int 2
'o' => int 1
Run Code Online (Sandbox Code Playgroud)

我的代码有效,只是我收到了一些奇怪的通知.

You*_*nse 10

$newarray = array();
foreach ($array as $variable)
{
    if (!isset($newarray[$variable])) {
        $newarray[$variable] = 0;
    }
    $newarray[$variable]++;
}
Run Code Online (Sandbox Code Playgroud)

  • 不应该是"$ newarray [$ variable] = 1;"否则,第一个'增量'将设置为零(因此不计算!) (4认同)