CMS솔루션마켓, 이온디 - 워드프레스, 라이믹스, 카페24, 그누보드, 엑셀

프리랜서 커뮤니티

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 (??):

$a = new stdClass;
$a->first = 1;

// This will give you a warning
$b = array($a->first, $a->second ?: NULL);

// This is fine
$c = array($a->first, $a->second ?? NULL);

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


출처 : https://todayilearned.net/2021/04/php-8-warning-when-trying-use-undefined-stdclass-properties