Sobes.tech
Junior — Middle

Функсияи __autoload() дар PHP барои чӣ аст?

sobes.tech AI

Ҷавоб аз AI

Функсияи __autoload() дар PHP барои боркунии автоматии синфҳо дар вақти аввалин истифодаи онҳо пешбинӣ шудааст, агар онҳо то ҳол пайваст нашуда бошанд. Ин имкон медиҳад, ки навиштани manual include ё require барои ҳар як синфро пешгирӣ кунад.

Вақте ки дар код объекти синфе сохта мешавад, ки ҳоло бор нашудааст, PHP функсияи __autoload()-ро бо номи он синф даъват мекунад. Дар дохили __autoload() одатан логикаи пайваст кардани файл бо таъриф кардани синфро татбиқ мекунанд.

Масалан истифодаи __autoload():

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

$obj = new MyClass(); // Ин ба таври автоматӣ файл MyClass.php-ро пайваст мекунад

Муҳим: аз PHP 5.3 ба баъд, тавсия дода мешавад, ки истифодаи spl_autoload_register()-ро истифода баред, зеро __autoload() кӯҳна ҳисобида мешавад.