ありがd。

実は$aは配列の配列で、
if (!key_exists($k, $a[$i])) ...
みたいな処理をするので、あらかじめ$a[$i]が存在していて欲しかった、っていう感じです。
まぁ警告出るだけで予め配列作っておかなくても動くんだけれども。