3v4l.org

run code in 300+ PHP versions simultaneously
<?php $arr = null; echo "Should throw a notice when trying to access an element in a non-array data type \n"; $should_throw_notice = 'foo' === $arr['key']; echo "\n=======\n\n"; echo "Should NOT throw a notice when setting an element in a non-array data type. PHP should type juggle from `null` to `array`.\n\n"; $arr['key'] = 'foo'; var_dump( $arr );
Output for 8.3.0 - 8.3.7
Should throw a notice when trying to access an element in a non-array data type Warning: Trying to access array offset on null in /in/m1QUYX on line 6 ======= Should NOT throw a notice when setting an element in a non-array data type. PHP should type juggle from `null` to `array`. array(1) { ["key"]=> string(3) "foo" }
Output for 8.1.23 - 8.1.28, 8.2.10 - 8.2.19
Should throw a notice when trying to access an element in a non-array data type Warning: Trying to access array offset on value of type null in /in/m1QUYX on line 6 ======= Should NOT throw a notice when setting an element in a non-array data type. PHP should type juggle from `null` to `array`. array(1) { ["key"]=> string(3) "foo" }
Output for 7.4.33
Should throw a notice when trying to access an element in a non-array data type Notice: Trying to access array offset on value of type null in /in/m1QUYX on line 6 ======= Should NOT throw a notice when setting an element in a non-array data type. PHP should type juggle from `null` to `array`. array(1) { ["key"]=> string(3) "foo" }

preferences:
72.3 ms | 402 KiB | 30 Q