Пользовательский класс PHP, API PayPal, API Mailgun, API Easypost. Могут ли они работать вместе
У меня есть сайт электронной коммерции, который я создаю для клиента. Ранее этот сайт прекрасно работал, используя процедурные функции и curl для звонков в Paypal. Я загружаю руководство Mailgun и Easypost API и устанавливаю вручную. Добившись дороги, я хотел обновить сайт, чтобы использовать PDO & OOP. Я сделал честную работу по созданию фундамента. Теперь пришло время начать звонить различным API. Я установил все, используя composer, и сейчас запускаю двойной автозагрузчик. Композитор автоматически загружается, а затем под ним настраивается автозагрузка для загрузки моих классов. Теперь, когда я вызываю API PayPal, я получаю следующую ошибку:
Fatal error: Class 'Paypal\Rest\ApiContext' not found in /var/www/html/myla-dev/shoppingCartFinalize.php on line 18
Я думаю, что происходит, что мой автозагрузчик пытается загрузить это, а не автозагрузчик композиторов. Вот где происходит автозагрузка:
init.php
require __DIR__.'/core/functions/general.php';
function autoLoader ($class) {
if (file_exists(__DIR__.'/core/classes/'.$class.'.php')) {
require __DIR__.'/core/classes/'.$class.'.php';
}
}
spl_autoload_register('autoLoader');
require __DIR__.'/vendor/autoload.php';
Этот файл находится в корневом каталоге проекта, а затем требуется вверху каждого файла.
Файловая структура
core
--classes
----Alert.php
----....
--functions
----general.php
vendor
--composer
--easypost
--guzzle
--mailgun
--symfony
--paypal
--autoload.php
index.php
init.php
...
composer.json
{
"repositories": [
{
"type": "vcs",
"url": "https://github.com/EasyPost/easypost-php"
}
],
"require": {
"php": ">=5.3.0",
"easypost/easypost-php": "dev-master",
"ext-curl": "*",
"ext-json": "*",
"paypal/rest-api-sdk-php":"*",
"mailgun/mailgun-php": "dev-master"
}
}
Любая помощь приветствуется. Если вам хочется писать код, БОЛЬШОЙ, но я не об этом. Это моя работа, но помочь с переделкой, чтобы она работала, было бы здорово.
Спасибо
1 ответ
Это закончилось простой синтаксической ошибкой. После того, как я сбросил и обновил composer, он все еще не работал, поэтому я просто скопировал код из установочной вики. Это сработало, и я написал их код для себя, и мне не хватало обратной косой черты в моем обращении к вики. Спасибо за вашу помощь, хотя.