ReflectionClass
PHP Manual

ReflectionClass::isInstantiable

(PHP 5, PHP 7)

ReflectionClass::isInstantiableVérifie si une classe est instanciable

Description

public bool ReflectionClass::isInstantiable ( void )

Vérifie si une classe est instanciable.

Avertissement

Cette fonction n'est pas documentée et seule la liste des arguments est disponible.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

Exemple #1 Exemple avec ReflectionClass::isInstantiable()

<?php
class { }

interface 
iface {
    function 
f1();
}

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

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

class 
extends abstractClass {
    function 
f2() { }
}

class 
privateConstructor {
    private function 
__construct() { }
}

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

foreach(
$classes  as $class ) {
    
$reflectionClass = new ReflectionClass($class);
    echo 
"Est-ce que la classe $class est instanciable  ?  ";
    
var_dump($reflectionClass->IsInstantiable()); 
}

?>

L'exemple ci-dessus va afficher :

Est-ce que la classe C est instanciable  ?  bool(true)
Est-ce que la classe iface est instanciable  ?  bool(false)
Est-ce que la classe ifaceImpl est instanciable  ?  bool(true)
Est-ce que la classe abstractClass est instanciable  ?  bool(false)
Est-ce que la classe D est instanciable  ?  bool(true)
Is privateConstructor instantiable?  bool(false)

Voir aussi


ReflectionClass
PHP Manual