我正在运行PHP 5.5并且无法让它再次抛出未定义的偏移通知.
$ php -a
Interactive mode enabled
php > error_reporting(E_ALL);
php > $b = null;
php > var_dump($b['foo']);
NULL
php > $b = "string";
php > var_dump($b['foo']);
PHP Warning: Illegal string offset 'foo' in php shell code on line 1
string(1) "s"
php > $b = 345678;
php > var_dump($b['foo']);
NULL
Run Code Online (Sandbox Code Playgroud)
我做错了什么或者大多数数据类型都取消了未定义的偏移通知吗?
使用以下命令会在所有 PHP 版本中引发该通知:
$b = array();
var_dump($b['foo']);
Run Code Online (Sandbox Code Playgroud)
所有其他变体通常不会发出通知:http://3v4l.org/18qM5