3v4l.org

run code in 300+ PHP versions simultaneously
<?php namespace jtreminio\AboutMe { class Entity {} abstract class Api { abstract function __construct(Entity $request); } } namespace jtreminio\AboutMe\Entity\User\Create { use jtreminio\AboutMe\Entity; class Request extends Entity { } } namespace jtreminio\AboutMe\Api\User { use jtreminio\AboutMe; use jtreminio\AboutMe\Entity; class Create extends AboutMe\Api { /** @var User\Create\Request */ private $request; /** @var string */ private $url = 'https://api.about.me/api/v2/json/user/create/'; /** * @param User\Create\Request $request */ // public function __construct(User\Create\Request $request) public function __construct(Entity $request) { $this->request = $request; } } $a = new \jtreminio\AboutMe\Entity\User\Create\Request(); var_dump(is_a($a, '\jtreminio\AboutMe\Entity')); }

preferences:
31.92 ms | 402 KiB | 5 Q