PHP class_exists() Fonksiyonu
PHP 4PHP 5PHP 7
Belirlenen sınıf adının tanımlı olup olmadığını kontrol eder.
Yapısı (Syntax)class_exists ( string $class_name [, bool $autoload = TRUE ] ) : bool
Parametreler
-
$class_name stringKontrol edilecek sınıfın adı. Büyük-küçük harfe duyarlı değildir.
-
$autoload = TRUE booleanSınıfların otomatik yüklenip yüklenmeyeceği belirlenir. Varsayılan olarak otomatik yüklenecektir.
Dönen Değer
boolean
- Sınıf tanımlı ise TRUE değil ise FALSE değerini döndürür.
Versiyon Güncellemeleri
Versiyon | Açıklama |
---|---|
5.0.2 |
Interface'leri kontrol etmek için artık kullanılmamaktadır. Bunun yerine interface_exists() fonksiyonu kullanılabilir. |
Örnekler
Örnek bir sınıfın olup olmadığını kontrol edelim.
<?php
class Test {}
var_dump(class_exists('test')); // Çıktı: bool(true)
var_dump(class_exists('prototurk')); // Çıktı: bool(false)
?>
Otomatik yüklenen sınıflar ile kullanım örneği.
<?php
spl_autoload_register(function ($className) {
$classFile = "classes/" . strtolower($className) . '.php';
if (file_exists($classFile))
include $classFile;
});
// Çıktı: bool(true)
// Çünkü 2. parametresi varsayılan olarak true ve kontrol işleminde
// yukarıdaki otomatik sınıf yükleme fonksiyonu yardımı ile sınıfın olduğunu biliyor
// tabi bu örnekte "classes/test.php" dosyanız olduğunu ve içinde Test sınıfının olduğunu varsayıyoruz.
var_dump(class_exists('test'));
// Çıktı: bool(false)
// Çünkü autoload olayını kapattık, dolayısı ile sınıfı yükleyemediği için
// ve sınıf otomatik çağırıldığı için bulamıyor.
var_dump(class_exists('test', false));
?>