ReflectionClass::isInstantiable

(PHP 5, PHP 7, PHP 8)

ReflectionClass::isInstantiableVerifica si una clase es instanciable

Descripción

public ReflectionClass::isInstantiable(): bool

Verifica si una clase es instanciable.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

Devuelve true en caso de éxito o false en caso de error.

Ejemplos

Ejemplo #1 Ejemplo con ReflectionClass::isInstantiable()

<?php
class C { }

interface
iface {
function
f1();
}

class
ifaceImpl implements iface {
function
f1() {}
}

abstract class
abstractClass {
function
f1() { }
abstract function
f2();
}

class
D extends abstractClass {
function
f2() { }
}

trait
T {
function
f1() {}
}

class
privateConstructor {
private function
__construct() { }
}

$classes = array(
"C",
"iface",
"ifaceImpl",
"abstractClass",
"D",
"T",
"privateConstructor",
);

foreach(
$classes as $class) {
$reflectionClass = new ReflectionClass($class);
echo
"¿Es la clase $class instanciable? ";
var_dump($reflectionClass->isInstantiable());
}

?>

El resultado del ejemplo sería:

¿Es C instanciable? bool(true)
¿Es iface instanciable? bool(false)
¿Es ifaceImpl instanciable? bool(true)
¿Es abstractClass instanciable? bool(false)
¿Es D instanciable? bool(true)
¿Es T instanciable? bool(false)
¿Es privateConstructor instanciable? bool(false)

Ver también