ApcUniversalClassLoader устаревший
class ApcUniversalClassLoader extends UniversalClassLoader
устаревший
ApcUniversalClassLoader реализует "универсальный" автозагрузчик, кэшируемый в APC для PHP 5.3.
Он может загружать классы, использующие:
Технические стандарты взаимодействия для PHP 5.3 пространств имён и имён классов (https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md);
Конвенцию именования PEAR для классов (http://pear.php.net/).
Классы из подпространства или поддерева классов PEAR могут быть искомы в списке расположений для упрощения использования подмножества классов в крупных проектах.
Пример использования:
require 'vendor/symfony/src/Symfony/Component/ClassLoader/UniversalClassLoader.php';
require 'vendor/symfony/src/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php';
use Symfony\Component\ClassLoader\ApcUniversalClassLoader;
$loader = new ApcUniversalClassLoader('apc.prefix.');
// register classes with namespaces
$loader->registerNamespaces(array(
'Symfony\Component' => __DIR__.'/component',
'Symfony' => __DIR__.'/framework',
'Sensio' => array(__DIR__.'/src', __DIR__.'/vendor'),
));
// register a library using the PEAR naming convention
$loader->registerPrefixes(array(
'Swift_' => __DIR__.'/Swift',
));
// activate the autoloader
$loader->register();
В этом примере, если вы попытаетесь использовать класс в пространстве имён Symfony\Component или одном из его подпространств (например, Symfony\Component\Console), автозагрузчик сначала будет искать класс в каталоге component/, а затем обратится к каталогу framework/ если он не найден, прежде чем отказаться от поиска.
Методы
| useIncludePath(bool $useIncludePath) Включает поиск в include пути для файлов классов. Позволяет легко загружать установленные пакеты PEAR. | from UniversalClassLoader | |
| bool | getUseIncludePath() Может быть использован для проверки того, использует ли автозагрузчик путь include для поиска классов. | from UniversalClassLoader |
| array | getNamespaces() Получает настроенные пространства имён. | from UniversalClassLoader |
| array | getPrefixes() Получает настроенные префиксы классов. | from UniversalClassLoader |
| array | getNamespaceFallbacks() Получает каталог(ы), используемые как резервные для пространств имён. | from UniversalClassLoader |
| array | getPrefixFallbacks() Получает каталог(ы), используемые как резервные для префиксов классов. | from UniversalClassLoader |
| registerNamespaceFallbacks(array $dirs) Регистрирует каталог для использования в качестве резервного для пространств имён. | from UniversalClassLoader | |
| registerNamespaceFallback(string $dir) Регистрирует каталог для использования в качестве резервного для пространств имён. | from UniversalClassLoader | |
| registerPrefixFallbacks(array $dirs) Регистрирует каталоги для использования в качестве резервных для префиксов классов. | from UniversalClassLoader | |
| registerPrefixFallback(string $dir) Регистрирует каталог для использования в качестве резервного для префиксов классов. | from UniversalClassLoader | |
| registerNamespaces(array $namespaces) Регистрирует массив пространств имён. | from UniversalClassLoader | |
| registerNamespace(string $namespace, array|string $paths) Регистрирует пространство имён. | from UniversalClassLoader | |
| registerPrefixes(array $classes) Регистрирует массив классов с использованием конвенции именования PEAR. | from UniversalClassLoader | |
| registerPrefix(string $prefix, array|string $paths) Регистрирует набор классов с использованием конвенции именования PEAR. | from UniversalClassLoader | |
| register(bool $prepend = false) Регистрирует этот экземпляр как автозагрузчик. | from UniversalClassLoader | |
| bool|null | loadClass(string $class) Загружает заданный класс или интерфейс. | from UniversalClassLoader |
| string|null | findFile(string $class) Находит файл по имени класса, кэшируя запросы в APC. | |
| __construct(string $prefix) Конструктор. |
Details
useIncludePath(bool $useIncludePath)
Включает поиск файлов классов в include_path. Обеспечивает лёгкую загрузку установленных пакетов PEAR.
Параметры
| bool | $useIncludePath |
bool getUseIncludePath()
Может использоваться для проверки, использует ли автозагрузчик include_path для поиска классов.
Значение возврата
| bool |
array getNamespaces()
Получает настроенные пространства имён.
Значение возврата
| array | Хэш с именами пространств имён в качестве ключей и каталогами в качестве значений |
array getPrefixes()
Получает настроенные префиксы классов.
Значение возврата
| array | Хэш с префиксами классов в качестве ключей и каталогами в качестве значений |
array getNamespaceFallbacks()
Получает каталог(ы) для использования в качестве резервного варианта для пространств имён.
Значение возврата
| array | Массив каталогов |
array getPrefixFallbacks()
Получает каталог(ы) для использования в качестве резервного варианта для префиксов классов.
Значение возврата
| array | Массив каталогов |
registerNamespaceFallbacks(array $dirs)
Регистрирует каталог для использования в качестве резервного варианта для пространств имён.
Параметры
| array | $dirs | Массив каталогов |
registerNamespaceFallback(string $dir)
Регистрирует каталог для использования в качестве резервного варианта для пространств имён.
Параметры
| string | $dir | Каталог |
registerPrefixFallbacks(array $dirs)
Регистрирует каталоги для использования в качестве резервного варианта для префиксов классов.
Параметры
| array | $dirs | Массив каталогов |
registerPrefixFallback(string $dir)
Регистрирует каталог для использования в качестве резервного варианта для префиксов классов.
Параметры
| string | $dir | Каталог |
registerNamespaces(array $namespaces)
Регистрирует массив пространств имён.
Параметры
| array | $namespaces | Массив пространств имён (пространства имён в качестве ключей и расположения в качестве значений) |
registerNamespace(string $namespace, array|string $paths)
Регистрирует пространство имён.
Параметры
| string | $namespace | Пространство имён |
| array|string | $paths | Расположение(я) пространства имён |
registerPrefixes(array $classes)
Регистрирует массив классов, используя соглашение PEAR.
Параметры
| array | $classes | Массив классов (префиксы в качестве ключей и расположения в качестве значений) |
registerPrefix(string $prefix, array|string $paths)
Регистрирует набор классов, используя соглашение PEAR.
Параметры
| string | $prefix | Префикс классов |
| array|string | $paths | Расположение(я) классов |
register(bool $prepend = false)
Регистрирует этот экземпляр в качестве автозагрузчика.
Параметры
| bool | $prepend | Включить ли префикс автозагрузчика |
bool|null loadClass(string $class)
Загружает указанный класс или интерфейс.
Параметры
| string | $class | Имя класса |
Значение возврата
| bool|null | True, если загружено |
string|null findFile(string $class)
Находит файл по имени класса, кэшируя запросы в APC.
Параметры
| string | $class | Имя класса |
Значение возврата
| string|null | Путь, если найден |
__construct(string $prefix)
Конструктор.
Параметры
| string | $prefix | Префикс для создания пространства имён в APC |
Исключения
| RuntimeException |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.1/Symfony/Component/ClassLoader/ApcUniversalClassLoader.html