0

我有一个为客户构建的电子商务网站。该站点以前使用程序函数和 curl 调用 Paypal 时运行良好。我下载了 Mailgun 和 Easypost API 手册并手动安装。在路上,我想更新网站以利用 PDO 和 OOP。我在奠定基础方面做得很好。现在是开始调用各种 API 的时候了。我使用 composer 安装了所有东西,目前运行的是双自动加载器。作曲家自动加载,然后在其下方自定义自动加载以加载我的类。现在,当我调用 PayPal API 时,我收到以下错误:

Fatal error: Class 'Paypal\Rest\ApiContext' not found in /var/www/html/myla-dev/shoppingCartFinalize.php on line 18 

我认为正在发生的事情是我的自动加载器正在尝试加载它而不是作曲家自动加载器。这是发生自动加载的地方:

初始化文件

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
...

作曲家.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"
  }
}

感谢您提供任何和所有帮助。如果您想编写代码,那太好了,但这不是我想要的。那是我的工作,但是帮助返工使它工作会很棒。

谢谢

4

1 回答 1

0

它最终成为一个简单的语法错误。在我转储和更新作曲家之后,它仍然无法工作,所以我只是从安装 wiki 复制了代码。它起作用了,所以我将他们的代码编写到我的代码中,而我在调用 wiki 时缺少反斜杠。不过感谢您的帮助。

于 2015-04-01T05:19:29.580 回答