簡體   English   中英

AWS PHP SDK獲取類未找到致命錯誤

[英]AWS PHP SDK getting class not found fatal error

我正在嘗試從SQS中讀取消息,但由於無法安裝PHP SDK而無法解決。

我按照說明進行操作,並通過composer安裝。

我用於測試的代碼是:

require 'vendor/autoload.php';
$sqs_credentials = array(
        'region' => 'us-west-2',
        'version' => 'latest',
        'credentials' => array(
            'key'    => '*****',
            'secret' => '**********',
        )
    );

    $sqs_client = new SqsClient($sqs_credentials);

這只是導致

Class 'SqsClient' not found in /var/www/html/sqs_test.php on line 10

然后,我嘗試直接下載zip文件並使用

require 'aws/aws-autoloader.php';

這導致了完全相同的錯誤。 我究竟做錯了什么? 我可以肯定路徑是正確的,因為我可以直接在Sqs / SqsClient.php上輸出文本。

仍不確定上述原因為何不起作用,但是如果有人在嘗試,這確實起作用:

require 'vendor/autoload.php';
use Aws\Sqs\SqsClient;

$client = SqsClient::factory(array(
        'region' => 'us-west-2',
        'version' => 'latest',
        'credentials' => array(
            'key'    => '********',
            'secret' => '********',
        )
    )
);

$result = $client->receiveMessage(array(
    'QueueUrl' => $sqs_url
));
print_r($result);

您嘗試實例化的類已命名。 記住要包括一個use Aws\\Sqs\\SqsClient; 在通過類的簡短名稱引用該類之前的聲明。

有點相關,但不完全是這個問題。 我沒有為Aws \\ Sns \\ MessageValidator(&Message)找到一個類,經過一番努力后發現最新的SDK v3.17.3 for PHP在\\ Sns下沒有它們-https: //github.com/aws/aws -sdk-php / tree / 3.17.3 / src / Sns 我只是回滾到早期版本3x並更正了導入路徑以獲取所需的類。 在這里發帖認為這可能對某人有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM