(PHP 4, PHP 5, PHP 7)
get_class — Retourne le nom de la classe d'un objet
$object
] )
Retourne le nom de la classe de l'objet obj
.
object
L'objet testé. Ce paramètre peut être omis lorsque la fonction est utilisée dans une classe.
Note: Passer explicitement
NULL
dansobject
n'est plus autorisé depuis PHP 7.2.0. Le paramètre est toujours optionnel et appeler get_class() dans une classe fonctionnera, mais passerNULL
émet une noticeE_WARNING
.
Retourne le nom de la classe dont object
est une instance. Retourne FALSE
si object
n'est pas un objet.
Si object
est omis lorsque la fonction est appelée dans une classe,
le nom de la classe courante est retourné.
Si object
est une instance d'une classe qui existe
dans un namespace, le nom avec les namespace de la classe sera retourné.
Si get_class() est appelée avec autre chose qu'un objet, une alerte de
niveau E_WARNING
sera émise.
Version | Description |
---|---|
7.2.0 |
NULL a n'est plus la valeur par défaut pour object ,
et n'est plus une entrée valide.
|
5.3.0 |
NULL est devenue la valeur par défaut pour object ,
donc passer NULL pour object a le même effet que de
laisser le paramètre vide.
|
Exemple #1 Exemple avec get_class()
<?php
class foo {
function name()
{
echo "Mon nom est " , get_class($this) , "\n";
}
}
// création d'un objet
$bar = new foo();
// Appel externe
echo "Son nom est " , get_class($bar) , "\n";
// Appel interne
$bar->name();
?>
L'exemple ci-dessus va afficher :
Son nom est foo Mon nom est foo
Exemple #2 Utilisation de get_class() dans une superclasse
<?php
abstract class bar {
public function __construct()
{
var_dump(get_class($this));
var_dump(get_class());
}
}
class foo extends bar {
}
new foo;
?>
L'exemple ci-dessus va afficher :
string(3) "foo" string(3) "bar"
Exemple #3 Utilisation get_class() avec des namespace de classe
<?php
namespace Foo\Bar;
class Baz {
public function __construct()
{
}
}
$baz = new \Foo\Bar\Baz;
var_dump(get_class($baz));
?>
L'exemple ci-dessus va afficher :
string(11) "Foo\Bar\Baz"