Почему доступ к индексу массива по логическому значению не вызывает каких-либо ошибок?

Когда я пытаюсь получить доступ к массиву по ключу, которого нет в этом массиве, php вызовет ошибку уведомления «undefined index». Когда я пытаюсь сделать то же самое для строк, появляется предупреждение «Недопустимое смещение строки». Это ожидаемое поведение, и я знаю, как с этим бороться.

Но когда я попробовал это на булевых или целочисленных значениях, ничего не происходит:

ini_set('display_errors', 1);
error_reporting(E_ALL);

$var = false;
var_dump($var['test']);

Я ожидаю увидеть некоторые сообщения об ошибках, но$var['test'] просто молча устанавливает в NULL.

Так почему же php разрешает доступ к логическому значению через ключ массива без указания того, что вы делаете что-то не так? Дырочная фраза «доступ к логическому значению через ключ массива» звучит для меня ужасно странно, но вы можете сделать это в php.

Ответы на вопрос(1)

Ваш ответ на вопрос