ellizii / autoloader
Autoloader
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:package
Requires
- php: >=7.4.0
This package is auto-updated.
Last update: 2024-05-05 22:31:22 UTC
README
Это пакет для автоматического подключения .php файлов, содержащих классы, интерфейсы, трейты и функции.
Перед началом работы необходимо подключить файл "Autoloader.php".
include_once 'путь к папке Autoloader/src/Autoloader.php';
После этого достаточно запустить класс:
Autoloader::getInstance($path);
$path - это может быть путь к файлу .php или отдельной папке.
Это может быть массив файлов или папок.
/* folder */
$path = __DIR__.'/load';
/* foders array */
$path =array(__DIR__.'/load',__DIR__.'/test');
/* files array */
$path =array(__DIR__.'/load/Load.php',__DIR__.'/load/LoadTrait.php');
/* file */
$path = __DIR__.'/load/LoadInterface.php';
/* Class map (array( namespace => path to file ) ) from file */
$path = __DIR__.'/load/loadArray.php';
Так как подключение происходит автоматически, то рекомендую соблюдать (но это не обязательно) некоторые правила:
- Имена файлов интерфейсов должны оканчиваться на "Interface.php"
- Имена файлов трейтов должны оканчиваться на "Trait.php"
- Имена файлов абстрактных классов должны оканчиваться на "Abstract.php"
- Имена файлов, расширяющих абстрактные классы, должны оканчиваться на "Class.php"
- Имена файлов, содержащих простые функции, должны оканчиваться на "Function.php"
- Имена файлов функций, использующих объекты, должны оканчиваться на "ObjectFunction.php"
- Имена файлов итераторов должны оканчиваться на "Iterator.php"
Данные рекомендации помогают подключить файлы в правильной последовательности, что позволяет избежать некоторых ошибок в работе.
Конечно имена файлов могут любые. Все они будут подключены. Но порядок подключения в этом случае будет зависеть от вас.