Пользовательский класс 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, он все еще не работал, поэтому я просто скопировал код из установочной вики. Это сработало, и я написал их код для себя, и мне не хватало обратной косой черты в моем обращении к вики. Спасибо за вашу помощь, хотя.

Другие вопросы по тегам