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) |
Подробности
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/2.8/Symfony/Component/ClassLoader/ApcUniversalClassLoader.html