函式名稱:class_exists()
適用版本:所有PHP版本
用法:class_exists() 函式用於檢查一個類是否已經被定義。它接受一個類名作為引數,並返回一個布林值,用於指示類是否存在。
語法:class_exists(string $class_name, bool $autoload = true): bool
引數:
- $class_name: 必需。要檢查的類名,可以包含名稱空間。
- $autoload: 可選。預設為 true。如果設定為 true,在類不存在的情況下會自動載入與類名相關的檔案。
返回值:如果類已經被定義,返回 true;否則返回 false。
示例:
// 檢查類是否存在
$classExists = class_exists('MyClass');
if ($classExists) {
echo '類 MyClass 已存在';
} else {
echo '類 MyClass 不存在';
}
// 使用名稱空間的類名檢查
$classExists = class_exists('MyNamespace\MyClass');
if ($classExists) {
echo '類 MyNamespace\MyClass 已存在';
} else {
echo '類 MyNamespace\MyClass 不存在';
}
// 以非自動載入方式檢查類是否存在
$classExists = class_exists('MyClass', false);
if ($classExists) {
echo '類 MyClass 已存在';
} else {
echo '類 MyClass 不存在';
}
備註:
- 如果沒有啟用名稱空間,只需要提供類名即可。如果啟用了名稱空間,需要包含完整的名稱空間和類名。
- 可以透過設定第二個引數 $autoload 為 false,來禁用自動載入,這樣在類不存在時將不會自動載入與類名相關聯的檔案。