331 of 410 menu

Функция spl_autoload_register

Функцията spl_autoload_register регистрира дадена функция като реализация на метод за автоматично зареждане на класове. Когато PHP срещне недефиниран клас, той последователно извиква всички регистрирани функции за автоматично зареждане, предавайки им името на класа. Първият параметър - callback-функция за автоматично зареждане, вторият параметър (незадължителен) - дали да се хвърля изключение при грешка, третият параметър (незадължителен) - дали да се добави функцията в началото на опашката.

Синтаксис

spl_autoload_register(callable $autoload_function [, bool $throw = true [, bool $prepend = false ]]);

Пример

Проста регистрация на функция за автоматично зареждане:

<?php function my_autoloader($class) { include 'classes/' . $class . '.php'; } spl_autoload_register('my_autoloader'); // Сега може да се създават обекти без явно include $obj = new MyClass(); ?>

Пример

Използване на анонимна функция за автоматично зареждане:

<?php spl_autoload_register(function ($class) { include 'lib/' . str_replace('\\', '/', $class) . '.php'; }); $obj = new Some\Namespace\MyClass(); ?>

Пример

Регистрация на няколко функции за автоматично зареждане:

<?php spl_autoload_register('autoloader1'); spl_autoload_register('autoloader2'); spl_autoload_register('autoloader3', true, true); // Добавяме в началото на опашката // PHP ще извиква функциите в реда: autoloader3, autoloader1, autoloader2 $obj = new MyClass(); ?>

Вижте също

  • функцията spl_autoload_functions,
    която връща автоматичните зареждачи
  • функцията spl_autoload_unregister,
    която премахва автоматичен зареждач
  • функцията class_exists,
    която проверява клас
Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне