Note that this function also counts enums.<?phpenum Bla{ case Foo;}var_dump(get_declared_classes());?>Result:array(116) { ... [115]=> string(3) "Bla"}
(PHP 4, PHP 5, PHP 7, PHP 8)
get_declared_classes — Возвращает массив с именами объявленных классов
У этой функции нет параметров.
Функция возвращает массив имён классов, которые объявили в текущем скрипте.
Замечание:
Учтите также, что в зависимости от модулей, которые собрали или загрузили в PHP, количество дополнительных классов варьируется. Это означает, что не получится объявлять свои классы с этими именами. Список предопределённых классов приводит раздел приложения «Предопределённые классы».
Версия | Описание |
---|---|
7.4.0 | Раньше функция get_declared_classes() возвращала родительские классы перед дочерними классами. Это поведение изменилось. Функция get_declared_classes() не гарантирует порядок имён классов в массиве с результатами. |
Пример #1 Пример использования функции get_declared_classes()
<?php
print_r(get_declared_classes());
?>
Вывод приведённого примера будет похож на:
Array ( [0] => stdClass [1] => __PHP_Incomplete_Class [2] => Directory )
Note that this function also counts enums.<?phpenum Bla{ case Foo;}var_dump(get_declared_classes());?>Result:array(116) { ... [115]=> string(3) "Bla"}
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 classoneclass classone { }//define classtwoclass classtwo { }//This will show X classes (built-ins, extensions etc) with//classone and classtwo as the last two elementsprint_r(get_declared_classes());//define classthreeclass classthree { }//...and fourclass classfour { }//Shows the same result as before with class three and four appendedprint_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)