https://github.com/andrey-tech/autoloader-psr4-php
Простой PSR-4 автозагрузчик классов на PHP7+, предназначенный для проектов не использующих Composer.
https://github.com/andrey-tech/autoloader-psr4-php
autoload autoloader autoloading php7 psr-4
Last synced: 6 months ago
JSON representation
Простой PSR-4 автозагрузчик классов на PHP7+, предназначенный для проектов не использующих Composer.
- Host: GitHub
- URL: https://github.com/andrey-tech/autoloader-psr4-php
- Owner: andrey-tech
- License: mit
- Created: 2020-06-30T06:03:22.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-02-14T07:29:42.000Z (over 4 years ago)
- Last Synced: 2025-02-03T21:46:06.705Z (8 months ago)
- Topics: autoload, autoloader, autoloading, php7, psr-4
- Language: PHP
- Homepage:
- Size: 19.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Autoloader PSR-4
Простой автозагрузчик классов на PHP7+, реализующий автоматическую загрузку классов из путей к файлам в соответствии со спецификацией [PSR-4](https://www.php-fig.org/psr/psr-4/).
Предназначен для проектов, которые не используют Composer и его [автозагрузчик](https://getcomposer.org/doc/01-basic-usage.md#autoloading) классов.
[](https://packagist.org/packages/andrey-tech/autoloader-psr4-php)
[](https://packagist.org/packages/andrey-tech/autoloader-psr4-php)
[](https://packagist.org/packages/andrey-tech/autoloader-psr4-php)## Содержание
- [Требования](#%D0%A2%D1%80%D0%B5%D0%B1%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
- [Описание](#%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5)
- [Пример использования](#%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
- [Автор](#%D0%90%D0%B2%D1%82%D0%BE%D1%80)
- [Лицензия](#%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F)- PHP >=7.0
Автозагрузчик состоит из 2-х файлов и работает в глобальном пространстве имен:
- *Autoloader.php* - содержит класс автозагрузчика `Autoloader`;
- *autoload.php* - предназначен для настройки параметров автозагрузчика `Autoloader` и его инициализации.В случае возникновении ошибок при работе автозагрузчика вызывается пользовательская ошибка типа `E_USER_ERROR`.
Параметры настройки автозагрузчика доступны через публичные статические свойства класса `Autoloader`:
Статическое свойство | По умолчанию | Описание
----------------------- | ----------------- | --------
`$autoloadPath` | `__DIR__ . './'` | Задает путь до каталога, в котором производится поиск классов для автозагрузки в соответствии со стандартом PSR-4. Путь задается относительно файла *Autoloader.php*
`$setAutoloadPathMode` | 3 | Задает режим включения каталога, в котором производится поиск классов для автозагрузки, в настройку РНР-конфигурации include_path:
`1` - заменить текущее значение include_path на каталог;
`2` - добавить каталог в начало include_path;
`3` - добавить каталог в конец include_path
`$prependAutoloadMode` | false | Если установлено значение true, то автозагрузчик поместит регистрируемую функцию автозагрузки классов в начало предоставляемой SPL очереди вместо добавления в конецПубличные статические методы класса `Autoloader`:
- `static setIncludePath(array $newPaths, int $mode = 3)` Устанавливает новые пути в настройку PHP-конфигурации include_path.
+ `$newPaths` - массив путей для включения в include_path;
+ `$mode` - режим включения путей в include_path:
* `1` - заменить текущее значение include_path на пути;
* `2` - добавить пути в начало include_path;
* `3` - добавить пути в конец include_path.Подключить в проекте файл *autoload.php*:
```php
require_once __DIR__ . '/../../../autoload.php';
```При необходимости, настроить параметры автозагрузчика `Autoloader` в файле *autoload.php*:
```php## Автор
© 2015-2021 andrey-tech
## Лицензия
Данный код распространяется на условиях лицензии [MIT](./LICENSE).