PHP 8.4.0 RC4 available for testing

get_declared_classes

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

get_declared_classesErmittelt die Namen der definierten Klassen

Beschreibung

get_declared_classes(): array

Ermittelt die Namen der definierten Klassen

Parameter-Liste

Diese Funktion besitzt keine Parameter.

Rückgabewerte

Liefert ein Array mit den Namen der zur Zeit definierten Klassen.

Hinweis:

Bitte beachten Sie, dass je nachdem, welche Extensions in Ihrer PHP-Installation einkompiliert oder geladen sind, weitere Klassen vordefiniert sein können. Dies bedeutet, dass Sie keine eigenen Klassen mit dem gleichen Namen anlegen können. Eine Liste der möglicherweise vordefinierten Klassen finden Sie im Anhang Predefined Classes

Changelog

Version Beschreibung
7.4.0 Zuvor gab get_declared_classes() immer die Elternklassen vor den Kindklassen zurück. Dies ist nicht länger der Fall. Für den Rückgabewert von get_declared_classes() wird keine bestimmte Reihenfolge zugesichert.

Beispiele

Beispiel #1 get_declared_classes()-Beispiel

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

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

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

Siehe auch

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