3v4l.org

run code in 300+ PHP versions simultaneously
<?php interface A {} interface B {} class NeedsA { function __construct(A $a) {} } class NeedsB extends NeedsA { function __construct(B $b) {} } var_dump(new NeedsB(new class implements B {}));
Output for 8.0.1 - 8.0.30, 8.1.0 - 8.1.30, 8.2.0 - 8.2.24, 8.3.0 - 8.3.12
object(NeedsB)#1 (0) { }

preferences:
48.9 ms | 406 KiB | 5 Q