interface_exists

Supported Versions: PHP 5 >= 5.0.2, PHP 7, PHP 8
Checks if the interface has been defined
<?php interface_exists(string $interface, bool $autoload = true): bool
<?php         $paramClassName = static::getParameterClassName($parameter);



        return $paramClassName

            && (class_exists($paramClassName) || interface_exists($paramClassName))

            && (new ReflectionClass($paramClassName))->isSubclassOf($className);

    }
<?php use Illuminate\Testing\Concerns\RunsInParallel;



if (interface_exists(\ParaTest\RunnerInterface::class)) {

    class ParallelRunner implements \ParaTest\RunnerInterface

    {

        use RunsInParallel;
<?php     public function testAwaitThrowsUnexpectedValueExceptionWhenPromiseIsRejectedWithFalse(callable $await)

    {

        if (!interface_exists('React\Promise\CancellablePromiseInterface')) {

            $this->markTestSkipped('Promises must be rejected with a \Throwable instance since Promise v3');

        }
<?php     public function testAwaitThrowsUnexpectedValueExceptionWhenPromiseIsRejectedWithNull(callable $await)

    {

        if (!interface_exists('React\Promise\CancellablePromiseInterface')) {

            $this->markTestSkipped('Promises must be rejected with a \Throwable instance since Promise v3');

        }
<?php     public function testAwaitShouldNotCreateAnyGarbageReferencesForPromiseRejectedWithNullValue(callable $await)

    {

        if (!interface_exists('React\Promise\CancellablePromiseInterface')) {

            $this->markTestSkipped('Promises must be rejected with a \Throwable instance since Promise v3');

        }
<?php         if (isset($a[$prefix.'returnType'])) {

            $v = $a[$prefix.'returnType'];

            $v = $v instanceof \ReflectionNamedType ? $v->getName() : (string) $v;

            $a[$prefix.'returnType'] = new ClassStub($a[$prefix.'returnType'] instanceof \ReflectionNamedType && $a[$prefix.'returnType']->allowsNull() && 'mixed' !== $v ? '?'.$v : $v, [class_exists($v, false) || interface_exists($v, false) || trait_exists($v, false) ? $v : '', '']);

        }

        if (isset($a[$prefix.'class'])) {

            $a[$prefix.'class'] = new ClassStub($a[$prefix.'class']);
<?php         if (isset($a[$prefix.'typeHint'])) {

            $v = $a[$prefix.'typeHint'];

            $a[$prefix.'typeHint'] = new ClassStub($v, [class_exists($v, false) || interface_exists($v, false) || trait_exists($v, false) ? $v : '', '']);

        } else {

            unset($a[$prefix.'allowsNull']);

        }