Forum und email
class_exists

class_exists

(PHP 4, PHP 5)

class_exists -- Sprawdza czy klasa została zdefiniowana

Opis

bool class_exists ( string nazwa_klasy [, bool autoload] )

Funkcja ta zwraca TRUE jeżeli klasa zadana przez parametr nazwa_klasy została zdefiniowana, FALSE w przeciwnym wypadku.

Przykład 1. class_exists() przykład

<?php
// Sprawdź czy klasa istnieje przed próbą jej użycia
if (class_exists('MyClass')) {
    
$myclass = new MyClass();
}

?>

class_exists() domyślnie spróbuje wywołać __autoload, jeśli nie chcesz aby class_exists() wywoływała __autoload, możesz ustawić parametr autoload na FALSE.

Przykład 2. Przykład z parametrem autoload

<?php
function __autoload($class)
{
    include(
$class . '.php');

    
// Sprawdź czy w includowanym pliku była deklaracja klasy
    
if (!class_exists($class, false)) {
        
trigger_error("Nie mogę załadować klasy: $class", E_USER_WARNING);
    }
}
    
if (
class_exists('MyClass')) {
    
$myclass = new MyClass();
}

?>

Notatka: Parametr autoload został dodany w PHP 5

Patrz także interface_exists() i get_declared_classes().