Sobes.tech
Junior — Middle

Чӣ гуна функсияи __autoload() дар PHP кор мекунад ва мақсади асосии он дар боргирии автоматии синфҳо чист?

sobes.tech AI

Ҷавоб аз AI

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

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

Масалан, иҷрои соддаии __autoload():

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

Аммо, аз PHP 5.3, тавсия дода мешавад, ки истифодаи spl_autoload_register()-ро истифода баред, ки имкон медиҳад, ки чандин боргузорони автоматиро сабт кунед ва онҳоро бо чандирии бештар идора кунед.

Мақсади асосии __autoload() — содда кардани идоракунии вобастагиҳо ва пешгирӣ кардани бисёр include-ҳо дар код, бо автоматӣ бор кардани синфҳои зарурӣ дар вақти истифода.