PHPackages                             andrey-tech/autoloader-psr4-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PSR &amp; Standards](/categories/psr-standards)
4. /
5. andrey-tech/autoloader-psr4-php

ActiveLibrary[PSR &amp; Standards](/categories/psr-standards)

andrey-tech/autoloader-psr4-php
===============================

Простой PSR-4 автозагрузчик классов на PHP7+, предназначенный для проектов не использующих Composer

2.0.0(5y ago)011MITPHPPHP &gt;=7.0

Since Jun 30Pushed 5y ago1 watchersCompare

[ Source](https://github.com/andrey-tech/autoloader-psr4-php)[ Packagist](https://packagist.org/packages/andrey-tech/autoloader-psr4-php)[ Docs](https://github.com/andrey-tech/autoloader-psr4-php)[ RSS](/packages/andrey-tech-autoloader-psr4-php/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)DependenciesVersions (5)Used By (0)

Autoloader PSR-4
================

[](#autoloader-psr-4)

Простой автозагрузчик классов на PHP7+, реализующий автоматическую загрузку классов из путей к файлам в соответствии со спецификацией [PSR-4](https://www.php-fig.org/psr/psr-4/). Предназначен для проектов, которые не используют Composer и его [автозагрузчик](https://getcomposer.org/doc/01-basic-usage.md#autoloading) классов.
[![Latest Stable Version](https://camo.githubusercontent.com/21bd45c6abfed9eff8a48d43721e06dc5068c7f7cd53cbf20abe9dd1d4acacb1/68747470733a2f2f706f7365722e707567782e6f72672f616e647265792d746563682f6175746f6c6f616465722d707372342d7068702f76)](https://packagist.org/packages/andrey-tech/autoloader-psr4-php)[![Total Downloads](https://camo.githubusercontent.com/b27c9f0e61e6c7cf268d04590a0a288388c15622aa44834daf683a70db16cbb4/68747470733a2f2f706f7365722e707567782e6f72672f616e647265792d746563682f6175746f6c6f616465722d707372342d7068702f646f776e6c6f616473)](https://packagist.org/packages/andrey-tech/autoloader-psr4-php)[![License](https://camo.githubusercontent.com/4f283c22cde93b14c520f46977acb4d0269b9e5b65eef3244d9b9c4d0021df25/68747470733a2f2f706f7365722e707567782e6f72672f616e647265792d746563682f6175746f6c6f616465722d707372342d7068702f6c6963656e7365)](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 &gt;=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*:

```
require_once __DIR__ . '/../../../autoload.php';
```

При необходимости, настроить параметры автозагрузчика `Autoloader` в файле *autoload.php*:

```
