1
我已經按預期工作外UserFrosting下面的代碼:UserFrosting與AWS SDK
<?php
echo "Hello World.<br>";
require_once '../vendor/autoload.php';
use Aws\Common\Aws;
$aws = Aws::factory('../aws/aws-config.json');
$client = $aws->get('S3');
$bucket = 'my-public-public';
$iterator = $client->getIterator('ListObjects', array(
'Bucket' => $bucket
));
foreach ($iterator as $object) {
echo $object['Key'] . "<br>";
}
在我UserFrosting比如我設法成功加載AWS-SDK-PHP與作曲:
- Installing aws/aws-sdk-php (3.19.24)
Downloading: 100%
使用Aws \ Common \ Aws;置於initialize.php,下面參照苗條:
use \Slim\Extras\Middleware\CsrfGuard;
use Aws\Common\Aws;
的代碼的其餘部分是在所述控制器:
public function readS3(){
$aws = Aws::factory('../aws/aws-config.json');
$client = $aws->get('S3');
...
}
我仍然得到以下錯誤:
Class 'UserFrosting\Aws' not found.
我錯過了什麼?
爲了增加這一點,沒有辦法解決OP的特定錯誤,而沒有看到更多的代碼上下文來了解UserFrosting命名空間在哪裏/如何被調用,但是這個答案應該使OP指向正確的方向。 –
@MikeBrant這個版本的UserFrosting中的大部分[controller文件](https://github.com/userfrosting/UserFrosting/blob/master/userfrosting/controllers/AccountController.php)都以'namespace UserFrosting;'開頭。因此,如果OP不熟悉命名空間,他們可能不會意識到PHP會認爲這是所有對類的引用的命名空間,除非另有明確聲明。 – alexw