4

Yii プロジェクトで Amazon AWS SDK for PHP を使用したいのですが、あらゆる種類のインクルード エラー ( などinclude(CFCredentials.php): failed to open stream: No such file or directory) が発生します。

クラス名はファイル名と一致しなければならないというYiiの仮定に関連している可能性があると思います...

私たちは何ができる??

4

4 に答える 4

5

私はそれを作りました:

spl_autoload_unregister(array('YiiBase', 'autoload'));
require_once PATH_TO_AWS_SDK . 'sdk.class.php';
// I write down in PATH_TO_AWS_SDK.'config.inc.php' my CFCredentials
spl_autoload_register(array('YiiBase', 'autoload'));

$amazon_opts = array(
    'curlopts' => array(
        CURLOPT_SSL_VERIFYPEER => false,
        CURLOPT_FORBID_REUSE   => false,
    ),
);
$amazon = new AmazonSES();
$response = $amazon->get_send_quota($amazon_opts);
于 2012-11-23T05:07:17.667 に答える
2

これは美しく機能しました:

// Include the SDK

Yii::import('application.vendors.aws.*');
spl_autoload_unregister(array('YiiBase', 'autoload'));
require_once 'sdk.class.php';
spl_autoload_register(array('YiiBase', 'autoload'));

// Instantiate the AmazonEC2 class
$ec2 = new AmazonEC2();
于 2013-02-25T16:04:46.860 に答える
1

誰かがこの問題に遭遇した場合に備えて、私は、PHAR ファイルを直接使用し (決定が下手だと私は知っています)、require_once を介してインポートしている場合、SDK 呼び出しが完了するまで、spl_autoload_register を呼び出して YiiBase 自動ロードを再度追加することはできないことを発見しました。 .

少なくとも、これは StsClient を使用して IAM ロールでロールを引き受ける場合のケースでした。

于 2016-01-07T17:49:16.093 に答える
0

これはより簡単な方法です。Yii S3 Upload 拡張機能を使用できます。

http://www.yiiframework.com/extension/s3upload/

于 2015-02-13T06:09:31.943 に答える