php Использование composer для загрузки НЕ из vendor/, а из других папок проекта (автозагрузка)
Primary tabs
Создаём/правим composer.json
Всё просто -- в секцию "autoload" файла composer.json (можно создать его в корне проекта, если в ваше проекте composer ранее не использовался) добавляем:
"autoload": { "psr-4": { "app\\": "psr4/" } }
-- такой манифест предлагает загружать все файлы, пространстро имён которых начинается на app\ из папки ("начиная с") psr4 (лежащей на том же уровне, что и композер json) по страндарту psr-4.
ПРИМЕЧАНИЕ: изменения вступят в силу после выполнения composer install, так как композер на основании указанных правил генерирует их реализацию в конкретном php-кода, поэтому выполнять composer install надо каждый раз после правки секции autoload.
Подключаем vendor/autoload.php
Ну и конечно, вам нужно будет подключить файл:
vendor/autoload.php
-- появится после того как вы выполните:
composer install
Пример -- путь к файлу и его пространство имён
После такого (как выше) объявления способа автозагрузки файл вида:
namespace app\helpers\ItForFree\rusphp; class Test { public static function test() { echo('hello!))'); die(); } }
Может быть автозагружен, если он будет лежать в папке:
psr4/helpers/ItForFree/rusphp/Test.php
- Log in to post comments
- 3395 reads