Laravel загружает сторонние библиотеки

PHP Laravel Composer

Версия Laravel: 5.5

Есть много сторонних библиотек классов, которые не делают Composer, а загружают их по требованию. Для таких библиотек классов мы можем использовать их только с небольшими модификациями. В качестве примеров я использую geetest и почтовый сервис SendCloud.

Создайте сторонний каталог SDK в среде Laravel.

mkdir app/Libraries

Поместите SDK geetest и SendCloud

После официальной загрузки соответствующего SDK перейдите кapp/LibrariesПод содержанием:

app/Libraries/sendcloud-php-sdk
app/Libraries/gt3-php-sdk

Обратите внимание, существуют ли соответствующие каталоги SDK..gitКаталог, если он существует, не забудьте удалить его рекурсивно.gitсодержание.Это каталог .git в каталоге SDK, не удаляйте его по ошибке.

Измените файл composer.json.

...
    "autoload": {
        "classmap": [
            "database/seeds",
            "database/factories",
            "app/Libraries/sendcloud-php-sdk/lib",
            "app/Libraries/gt3-php-sdk"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },
...

В автозагрузку -> classmap добавленоapp/Libraries/sendcloud-php-sdk/lib,app/Libraries/gt3-php-sdk.

выполнить команду композитора

Выполните в проекте Laravel:

composer dump-autoload

Закончено.

Об использовании

Например, в контроллере Laravel для использования

$objSendCloud  = new \SendCloud(API_USER, API_KEY[, VERSION]);
$objGeetestLib = new \GeetestLib(CAPTCHA_ID, PRIVATE_KEY);

Что ж, призыв правильный. Заканчивать!