Sobes.tech
Junior — Middle

Waarvoor is de functie __autoload() bedoeld en welke parameters accepteert ze?

sobes.tech AI

Antwoord van AI

De functie __autoload() in PHP is bedoeld om classes automatisch te laden bij het eerste gebruik, als de class nog niet is gedeclareerd.

Het neemt één parameter — de naam van de class die geladen moet worden.

Wanneer in de code een niet-bestaande class wordt gebruikt, roept PHP __autoload($className) aan, waarbij $className de naam van die class is. Binnen de functie wordt meestal een bestand met de definitie van de class ingeladen.

Voorbeeld:

function __autoload($className) {
    include_once 'classes/' . $className . '.php';
}

$obj = new MyClass(); // als MyClass niet geladen is, wordt __autoload aangeroepen met 'MyClass'

Belangrijk: vanaf PHP 5.3 wordt aanbevolen om spl_autoload_register() te gebruiken in plaats van __autoload() om autoloaders te registreren.