Sobes.tech
Junior — Middle

Do czego służy funkcja __autoload() i jakie parametry przyjmuje?

sobes.tech AI

Odpowiedź od AI

Funkcja __autoload() w PHP służy do automatycznego ładowania klas podczas ich pierwszego użycia, jeśli klasa jeszcze nie została zadeklarowana.

Przyjmuje jeden parametr — nazwę klasy, którą należy załadować.

Gdy w kodzie pojawia się użycie nieistniejącej klasy, PHP wywołuje __autoload($className), gdzie $className to nazwa tej klasy. Wewnątrz funkcji zazwyczaj dołącza się plik z definicją klasy.

Przykład:

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

$obj = new MyClass(); // jeśli MyClass nie jest załadowana, wywoła się __autoload z 'MyClass'

Ważne: od PHP 5.3 zaleca się używanie spl_autoload_register() zamiast __autoload() do rejestrowania autoloaders.