0

我为Mailgun 的服务安装了Composer和 SDK 。这些是我遵循的步骤:

# current directory
cd ~

# Install Composer
curl -sS https://getcomposer.org/installer | php

# Add Mailgun as a dependency
php composer.phar require mailgun/mailgun-php:~1.7

根据说明,之后我所做的就是(index.php):

<?php
require 'vendor/autoload.php';
use Mailgun\Mailgun;

# First, instantiate the SDK with your API credentials and define your domain.
$mg = new Mailgun("key-my-key-goes-here-987654321");
$domain = "somedomain.com";

然后,我尝试获取退回的电子邮件列表:

$data = $mg->get("$domain/bounces", array('limit' => 15, 'skip'  => 0));
var_dump($data);

...我收到了这个错误:

警告:require(vendor/autoload.php):打开流失败:第 2 行 /var/www/html/index.php 中没有这样的文件或目录致命错误:require():打开所需的“供应商/自动加载”失败。第 2 行 /var/www/html/index.php 中的 php' (include_path='.:/usr/share/pear:/usr/share/php')

所以我猜它可能与作曲家的安装/配置有关?谢谢你的帮助...

4

1 回答 1

1

按照您的编程方式,您必须将以下文件全部放在同一目录中:

composer.json
index.php (your test script)

并且您必须composer require在此目录中运行该命令。这还将创建一个名为vendorhere 的目录,并添加大量文件,其中包括vendor/autoload.php.

但是,如果您的测试脚本不在此位置,则require调用将找不到您告诉 PHP 找到它的文件。这不是 Composer 的任何失败,而只是您必须根据您的情况包含该文件,而不是通过复制和粘贴代码。如果更改测试脚本的路径,则还必须更改供应商目录的路径。

于 2014-04-26T13:48:16.757 回答