On Apr 12, 2016 15:02, "Ivan Enderlin" <ivan.ender...@hoa-project.net> wrote: > > Hello Marco, > > Actually, you are trying to access to something that does not exist, so you get a null value. This part is logical. However, yes, a notice would be welcomed except it may be skipped for historical reasons I reckon. Probably to work well with `isset` or similar scenario.
Isset works regardless, because it is implemented as a language construct. But on topic, then yes, it should emit a notice. > > Cheers. > > > On 12/04/16 14:59, Marco Pivetta wrote: >> >> Hello, >> >> I just stumbled upon behavior that seems to "fail silently" regardless of >> its very questionable validity: >> >> <?php >> >> $a = 1; >> >> var_dump($a[123]); // NULL, no notice >> >> https://3v4l.org/b3rDr >> >> Are there specific reasons why no notice is thrown? Is it by design? If so, >> does anyone remember why? >> >> I haven't checked if this affects other types too. I know that an >> assignment to an array key of a non-array would cause a cast of the value >> to `array`, but a mere read operation should surely cause a notice to be >> raised in the above scenario. >> >> Cheers, >> >> Marco Pivetta >> >> http://twitter.com/Ocramius >> >> http://ocramius.github.com/ >> > > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php >