Autoloading dalam PHP: Panduan untuk spl_autoload dan spl_autoload_register
Autoloading ialah teknik yang digunakan dalam PHP untuk memuatkan kelas secara automatik apabila ia diperlukan, menghapuskan keperluan untuk memasukkan atau memerlukannya secara manual pada setiap halaman. Secara tradisinya, __autoload digunakan untuk tujuan ini. Walau bagaimanapun, spl_autoload_register dan spl_autoload_register lebih disukai dan menawarkan lebih fleksibiliti.
spl_autoload_register
spl_autoload_register membenarkan anda mendaftar fungsi atau kaedah statik yang akan dipanggil oleh PHP apabila kelas baharu diisytiharkan. Dengan menyediakan fungsi ini sebagai hujah, anda boleh mentakrifkan cara PHP mencari dan memasukkan kelas anda.
Sebagai contoh:
spl_autoload_register('myAutoloader'); function myAutoloader($className) { $path = '/path/to/class/'; include $path.$className.'.php'; }
Dalam contoh ini, PHP akan mencari fail kelas dalam yang ditentukan laluan dan masukkannya apabila contoh baharu kelas itu dicipta.
__autoload()
Tidak seperti spl_autoload_register, __autoload didaftarkan secara automatik oleh PHP sebagai pelaksanaan lalai autoloading. Ia menjangkakan fungsi itu dinamakan __autoload dan menerima argumen tunggal dengan nama kelas yang perlu dimuatkan.
Contoh
function __autoload($className) { include $className.'.php'; }
spl_autoload
spl_autoload ialah fungsi yang spl_autoload_register() panggilan secara lalai. Jika spl_autoload_register() dipanggil tanpa argumen, spl_autoload akan digunakan sebagai pengendali lalai untuk autoloading.
Memilih Antara Kaedah Autoloading
Memudahkan pemuatan dinamik kelas.
Gunakan autoloading untuk memuatkan hanya apa yang diperlukan, mengurangkan penggunaan memori.
Atas ialah kandungan terperinci Bagaimanakah `spl_autoload_register` PHP Bertambah Baik Apabila `__autoload` untuk Kelas Autoloading?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!