Dlaczego PHP nie narzeka, gdy traktuję wartość pustą jako tablicę taką jak ta?

W PHP mamerror_reporting ustawić raportowanie wszystkiego, w tym powiadomień.

Dlaczego następujące informacje nie rzucają żadnych powiadomień, błędów lub czegokolwiek innego?

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

Kroki rozwiązywania problemów:

$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?

Możliwe, że jest to błąd w PHP lub po prostu nie rozumiem czegoś o tym, jak to działa.

questionAnswers(3)

yourAnswerToTheQuestion