3

AWS PHP SDK の取り込みに取り組んでいますが、現在のスタックがパッケージ マネージャーを使用していないため、いくつかの問題が発生しています。それを使い始めるのも選択肢ではありません(会社関連 - むしろ詳しくは言いません)。

そうは言っても、私はソースを直接取り込み、それをインクルード パスに追加しようとしており、作成中の S3 ラッパー オブジェクトに必要なファイルを含めるだけです。ただし、名前空間 (私が思うに) と爆発の問題に直面しています。

これは私が参照しているライブラリです: https://github.com/aws/aws-sdk-php

AmazonS3 の操作とファイルのアップロードに関する下部のビットに従ってみました。そのため、次のように参照されているコードのさまざまな部分を含めようとしました。

試行 1

require_once('/includes/third_party/aws-sdk-php-master/src/Aws/Common/Aws.php');
require_once('/includes/third_party/aws-sdk-php-master/src/Aws/S3/Enum/CannedAcl.php');
require_once('/includes/third_party/aws-sdk-php-master/src/Aws/S3/Exception/S3Exception.php');

試行 2

set_include_path(get_include_path() . "/includes/third_party/aws-sdk-php-master/src/");
include('Aws/Common/Aws.php');
include('Aws/S3/Enum/CannedAcl')
include('Aws/S3/Exception/S3Exception.php');   

これらは両方とも同様のエラーを生成しました:

Fatal error: Class 'Guzzle\Service\Builder\ServiceBuilderLoader' not found in \includes\third_party\aws-sdk-php-master\src\Aws\Common\Aws.php on line 26
PHP Fatal error: Class 'Guzzle\Service\Builder\ServiceBuilderLoader' not found in \includes\third_party\aws-sdk-php-master\src\Aws\Common\Aws.php on line 26

これのデバッグを開始する方法について何かアドバイスはありますか? よろしくお願いします!

4

2 に答える 2

7

AWS SDK for PHP には、オートローダーを含む必要なものがすべて含まれた zip ファイルが同梱されています: http://docs.aws.amazon.com/aws-sdk-php-2/guide/latest/installation.html#installing-via -zip .

于 2013-06-05T09:07:33.900 に答える
0

推奨されるインストール手順に従う必要があります。個人的には、Composer をインストールするか、Composer なしで PHAR を使用します。

次に、次のように PHAR を含める必要があります。

require '/path/to/aws.phar';

そして、あなたはあなたが必要とするすべてを手に入れるでしょう。

現在抱えている問題は、オートローダーを利用していない可能性があります。あなたのアプローチを使用すると、通常は自動ロードされるすべてのクラスを手動で含める必要があります。

また、別のライブラリをダウンロードして含める必要があります (Guzzle、PHAR アーカイブには含まれていません)。

于 2013-01-24T01:02:42.367 に答える