class_exists
(PHP 4, PHP 5)
class_exists — Checks if the class has been defined
Beschreibung
bool class_exists
( string
$class_name
[, bool $autoload = true
] )Diese Funktion prüft ob eine bestimmte Klasse definiert wurde.
Parameter-Liste
-
class_name -
Der Klassenname. Groß- und Kleinschreibung wird beim Vergleich nicht beachtet.
-
autoload -
Gibt an ob __autoload genutzt werden soll.
Rückgabewerte
Gibt TRUE zurück falls die Klasse class_name
definiert ist, sonst FALSE.
Changelog
| Version | Beschreibung |
|---|---|
| 5.0.2 |
Die Funktion liefert nun nicht mehr TRUE für Interfaces.
Nutzen Sie hierfür interface_exists().
|
Beispiele
Beispiel #1 class_exists() Beispiel
<?php
// prüft vor Benutzung ob die gewünschte Klasse definiert ist
if (class_exists('MyClass')) {
$myclass = new MyClass();
}
?>
Beispiel #2 autoload Parameter Beispiel
<?php
function __autoload($class)
{
include($class . '.php');
// Prüft ob die includierte Datei die Klasse tatsächlich definiert
if (!class_exists($class, false)) {
trigger_error("Die Klasse $class kann nicht geladen werden", E_USER_WARNING);
}
}
if (class_exists('MyClass')) {
$myclass = new MyClass();
}
?>
Siehe auch
- function_exists() - Falls die angegebene Funktion definiert ist, wird TRUE zurück gegeben
- interface_exists() - Prüft ob ein bestimmtes Interface definiert wurde
- get_declared_classes() - Ermittelt die Namen der definierten Klassen