Por que o PHP não reclama quando eu trato um valor nulo como uma matriz como essa?

Em PHP, tenhoerror_reporting definido para relatar tudo, incluindo avisos.

Por que o seguinte não lança nenhum aviso, erro ou qualquer outra coisa?

$myarray = null;
$myvalue = $myarray['banana'];

Etapas de solução de problemas:

$myarray = array();
$myvalue = $myarray['banana'];
// throws a notice, as expected ✔

$myarray = (array)null;
$myvalue = $myarray['banana'];
// throws a notice, as expected ✔

$myarray = null;
$myvalue = $myarray['banana'];
// no notice or warning thrown, $myvalue is now NULL. ✘ Why?

É possível que seja um bug no PHP, ou eu não estou entendendo nada sobre como isso funciona.

questionAnswers(3)

yourAnswerToTheQuestion