如何安装AWS SDK中的Yii(How to install the AWS SDK in Yii

2019-08-03 02:55发布

我想用亚马逊AWS SDK的PHP在我的Yii项目,但是我获得各种包括错误(如include(CFCredentials.php): failed to open stream: No such file or directory )。

我认为这可能与Yii中的假设,即类名称必须的文件名匹配...

我们能做什么??

Answer 1:

我做了:

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);


Answer 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();


Answer 3:

万一有人绊倒在这个问题上,我发现,如果一个人使用药业文件直接(错误的决定,我知道),并通过require_once导入,你不能叫spl_autoload_register重新添加YiiBase自动加载,直到后您的SDK调用完成。

至少使用StsClient调用承担与IAM角色角色时,这是我们的情况。



Answer 4:

这是更简单的方法,你可以使用Yii的S3上传扩展。

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



文章来源: How to install the AWS SDK in Yii