Typical PHP behaviour with class properties

Code
<?php

// a class without anything
class Foo {}

$anyObject = new Foo();
// Foo has no property funProp
dump(property_exists($anyObject'funProp'));

$anyObject->funProp 'you don\'t have properties, Foo? ' .
    
'Are you sure?';

// suddenly it has a property funProp
dump(property_exists($anyObject'funProp'));

// Open the door to bad code with this behaviour
echo $anyObject->funProp;
Result
^ false

^ true

you don't have properties, Foo? Are you sure?
Used Versions
PHP 8.0, Laminas MVC 3.2, Symfony 5.2, Laravel 8.28, PHPUnit 9.5, Doctrine ORM 2.8