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
- 4035 reads