Creating default object from empty value¶
Description¶
This deprecation message is emitted in PHP 7.x to signal that an object was created without instantiation. In the illustration code, $x
does not exist before assigning it a property a
, and a value. The created object is stdClass
.
This error is specific to the creation of the variable: if $x
was set with null
, a different message was emitted.
Example¶
<?php
$x->a = 1;
?>
Solutions¶
Explicitly create the object before accessing its properties.
Cast an array to
(object)
.
In more recent PHP versions, this error message is now Attempt to assign property “%s” on null.
Changed Behavior¶
This error may appear in different PHP versions creatingObjectOnNull.