spl_autoload_functions

(PHP 5 >= 5.1.2)

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

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