Тут я частенько публикую в открытым доступе полезные материаллы и готовые решения для повседневных задач по 1С-Битрикс и Битрикс24, а также затрагиваю темы всё что связано с сайтостроением
Composer + 1С-Битрикс с автозагрузкой классов

Первым делом установите composer на вашем сервере
В последних версиях битрикс уже есть Composer, в папке "/bitrix/" Вы найдете 2 файла: "composer.json.example" и "composer-bx.json". 1 файл они оставили в качества примера, а второй по их рекомендации будем подключать в свой файл composer.json через плагин Composer Merge Plugin
Для удобства я решил расположить файл composer.json в папке /local/ и думаю это правильное решение нежели в папке /bitrix/.
composer.json
{
"require": {
"wikimedia/composer-merge-plugin": "dev-master",
"kint-php/kint": "^4.0"
},
"require-dev": {
"roave/security-advisories": "dev-latest"
},
"config": {
"vendor-dir": "vendor"
},
"extra": {
"merge-plugin": {
"require": [
"../bitrix/composer-bx.json"
]
}
},
"autoload": {
"psr-4": {
"App\\Namespace\\": "php_interface/classes/"
}
}
}
Как могли заметить я добавил сюда автозагрузку классов, придерживаясь стандарту PSR-4
Так как по умолчанию при выполнения команды composer install система ожидает увидеть наш файл composer.json из папки /bitrix/, но мы его расположили в папке /local/, чтобы сменить путь пропишем в файле /bitrix/.settings.php
'composer' => [
'value' => ['config_path' => '/local/composer.json']
],
Данная запись в файле .settings.php Вам понадобиться когда будете использовать Bitrix CLI
И на последок подключим файл autoload.php в init.php, чтобы Битрикс увидел наши созданные классы
Для этого я создал файл autoload.php в папке "/local/php_interface/" в нем подключаем файл autoload.php от composer
if (file_exists($_SERVER["DOCUMENT_ROOT"]."/local/vendor/autoload.php")) {
require_once($_SERVER["DOCUMENT_ROOT"] . "/local/vendor/autoload.php");
}
Затем в файле /local/php_inteface/init.php
if (file_exists($_SERVER["DOCUMENT_ROOT"]."/local/php_interface/autoload.php")) {
require_once($_SERVER["DOCUMENT_ROOT"] . "/local/php_interface/autoload.php");
}