Trying to use undefined properties in PHP stdClass
objects gives you a "warning" as of PHP 8 (it used to be a "notice" that, being realistic, you ignored).
One way to fix code that looks like the following is to use the new "null coalescing" operator (??
):
For the $b
line, you get these logs in the different versions of PHP:
Output for 8.0.0 - 8.0.3
Warning: Undefined property: stdClass::$second in /in/DsRb2 on line 6
Output for 5.3.0 - 7.4.16
Notice: Undefined property: stdClass::$second in /in/DsRb2 on line 6
Warning: Undefined property: stdClass::$second in /in/DsRb2 on line 6
Output for 5.3.0 - 7.4.16
Notice: Undefined property: stdClass::$second in /in/DsRb2 on line 6