Hàm spl_autoload_call
Hàm spl_autoload_call gọi tất cả các trình tự động tải đã đăng ký để thử tải lớp được chỉ định. Không giống như spl_autoload_register, hàm đăng ký các trình tự động tải, hàm này trực tiếp thực hiện việc gọi chúng. Tham số duy nhất - tên lớp cần được tải.
Cú pháp
spl_autoload_call(string $class_name): void
Ví dụ
Hãy thử tải một lớp không tồn tại mà không có trình tự động tải:
<?php
spl_autoload_call('NonExistentClass');
?>
Kết quả thực thi mã (lỗi, nếu không có trình tự động tải nào được đăng ký):
// Sẽ không có gì xảy ra, nếu không có trình tự động tải nào được đăng ký
Ví dụ
Tạo một trình tự động tải đơn giản và thử tải một lớp:
<?php
spl_autoload_register(function($class) {
echo "Đang thử tải lớp: $class\n";
});
spl_autoload_call('TestClass');
?>
Kết quả thực thi mã:
Đang thử tải lớp: TestClass
Ví dụ
Kiểm tra hoạt động với nhiều trình tự động tải:
<?php
spl_autoload_register(function($class) {
echo "Trình tải thứ nhất: $class\n";
});
spl_autoload_register(function($class) {
echo "Trình tải thứ hai: $class\n";
});
spl_autoload_call('MyClass');
?>
Kết quả thực thi mã:
Trình tải thứ nhất: MyClass
Trình tải thứ hai: MyClass
Xem thêm
-
hàm spl_autoload_register,
hàm đăng ký trình tự động tải -
hàm spl_autoload_functions,
hàm trả về các trình tự động tải -
hàm class_exists,
hàm kiểm tra lớp