PHP 8.4.1 Released!

get_declared_classes

(PHP 4, PHP 5, PHP 7, PHP 8)

get_declared_classesListe toutes les classes définies dans PHP

Description

get_declared_classes(): array

Liste toutes les classes définies.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Retourne un tableau contenant la liste des noms des classes déclarées dans le script courant.

Note:

Notez que suivant les extensions qui sont compilées ou chargées dans PHP, d'autres classes peuvent être présentes. Cela signifie que vous ne pourrez pas utiliser ces noms de classes pour définir vos propres classes. Voici une liste des classes prédéfinies.

Historique

Version Description
7.4.0 Précédemment get_declared_classes() retournait toujours les classes parentes avant les classes enfant. Ceci n'est plus le cas. Aucun ordre particulier n'est garantie pour la valeur de retour de get_declared_classes().

Exemples

Exemple #1 Exemple avec get_declared_classes()

<?php
print_r
(get_declared_classes());
?>

Résultat de l'exemple ci-dessus est similaire à :

Array
(
    [0] => stdClass
    [1] => __PHP_Incomplete_Class
    [2] => Directory
)

Voir aussi

add a note

User Contributed Notes 2 notes

up
1
rmamdaminov at gmail dot com
1 year ago
Note that this function also counts enums.

<?php

enum Bla
{
case
Foo;
}

var_dump(get_declared_classes());
?>

Result:
array(116) {
...
[115]=> string(3) "Bla"
}
up
1
matt-php at DONT-SPAM-ME dot bitdifferent dot com
20 years ago
The array returned by this function will be in the order the classes were defined / included / required and this order does not appear to change.

For example:

<?PHP

//define classone
class classone { }

//define classtwo
class classtwo { }

//This will show X classes (built-ins, extensions etc) with
//classone and classtwo as the last two elements

print_r(get_declared_classes());

//define classthree
class classthree { }

//...and four
class classfour { }

//Shows the same result as before with class three and four appended
print_r(get_declared_classes());

?>

Output:

Array
(
[0] => stdClass
[1] .... other defined classes....
[10] => classone
[11] => classtwo
)

and...

Array
(
[0] => stdClass
[1] .... other defined classes....
[10] => classone
[11] => classtwo
[12] => classthree
[13] => classfour
)
To Top