spl_autoload_functions

(PHP 5 >= 5.1.2, PHP 7)

spl_autoload_functions Получение списка всех зарегистрированных функций __autoload()

Описание

array spl_autoload_functions ( void )

Получает список всех зарегистрированных функций __autoload().

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Массив array всех зарегистрированных в __autoload функций. Если автозагрузка не включена, то вернет FALSE. Если ни одна функция не зарегистрирована, то вернет пустой массив.

Коментарии

If you use an anonymous function, it will return the object that are expected.

spl_autoload_register(function ($myclass){
    $keyclass = substr($myclass, 0, 1);

    switch ($keyclass) {
        case 'c':
            if (file_exists("class".DIRECTORY_SEPARATOR.$myclass.".php") === true)
                require_once ("class".DIRECTORY_SEPARATOR.$myclass.".php");
            break;
        case 'i':
            if (file_exists("interface".DIRECTORY_SEPARATOR.$myclass.".php") === true)
                require_once ("interface".DIRECTORY_SEPARATOR.$myclass.".php");
            break;
        case 'a':
            if (file_exists("abstract".DIRECTORY_SEPARATOR.$myclass.".php") === true)
                require_once ("abstract".DIRECTORY_SEPARATOR.$myclass.".php");
            break;
        default:
            if (file_exists($myclass.".php") === true)
                require_once ($myclass.".php");
    }

/******************************/

var_dump(spl_autoload_functions()) return:

array(1) {
  [0]=>
  object(Closure)#1 (1) {
    ["parameter"]=>
    array(1) {
      ["$myclass"]=>
      string(10) "<required>"
    }
  }
}
2017-07-05 14:14:15
http://php5.kiev.ua/manual/ru/function.spl-autoload-functions.html
<?php
spl_autoload_register
(function ($name) {
    echo 
"Want to load $name.\n";
   
});

spl_autoload_register(function($className) {
   
var_dump($className);
});

function 
unregister($className) {
   
var_dump($className.' i will be the first');
}

spl_autoload_register('unregister');

var_dump(spl_autoload_functions());

===================

array(
3) {
  [
0]=>
 
object(Closure)#1 (1) {
   
["parameter"]=>
    array(
1) {
      [
"$name"]=>
     
string(10"<required>"
   
}
  }
  [
1]=>
 
object(Closure)#2 (1) {
   
["parameter"]=>
    array(
1) {
      [
"$className"]=>
     
string(10"<required>"
   
}
  }
  [
2]=>
 
string(10"unregister"
}
2019-03-01 08:01:44
http://php5.kiev.ua/manual/ru/function.spl-autoload-functions.html

    Поддержать сайт на родительском проекте КГБ