spl_autoload_call функциясы

spl_autoload_call функциясы көрсетілген класты жүктеуге тырысу үшін тіркелген барлық автозагрузчиктерді шақырады. spl_autoload_register автозагрузчиктерді тіркесе, ал бұл функция тікелей оларды шақыруды орындайды. Жалғыз параметр - жүктеу керек кластың атауы.

Синтаксис

phpspl_autoload_call(string $class_name): void

Мысал

Автозагрузчиксіз жоқ класты жүктеуге тырысайық:

php<?php
spl_autoload_call('NonExistentClass');
?>

Код орындау нәтижесі (автозагрузчиктер тіркелмеген жағдайда қате):

php// Егер тіркелген автозагрузчиктер жоқ болса, ештеңе болмайды

Мысал

Қарапайым автозагрузчик жасап, класты жүктеуге тырысайық:

php<?php
spl_autoload_register(function($class) {
  echo "Class жүктеуге тырысу: $class\n";
});

spl_autoload_call('TestClass');
?>

Код орындау нәтижесі:

phpClass жүктеуге тырысу: TestClass

Мысал

Бірнеше автозагрузчиктермен жұмысты тестейік:

php<?php
spl_autoload_register(function($class) {
  echo "Бірінші жүктеуіш: $class\n";
});

spl_autoload_register(function($class) {
  echo "Екінші жүктеуіш: $class\n";
});

spl_autoload_call('MyClass');
?>

Код орындау нәтижесі:

phpБірінші жүктеуіш: MyClass
Екінші жүктеуіш: MyClass

Сондай-ақ қараңыз