3v4l.org

run code in 300+ PHP versions simultaneously
<?php class MyDTO{ public ?int $propA; public ?int $propB; } $dto = new MyDTO(); $dto->propA = null; echo (new ReflectionProperty(MyDTO::class, 'propB'))->isInitialized($dto) ? 'init' : 'no-init';
Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.27, 8.4.1 - 8.4.14
no-init

preferences:
86.74 ms | 406 KiB | 5 Q