0

私は symfony 2.1 の下でプロジェクトに取り組んでいます。AWS API をインストールして使用する必要があります (PHP/CURL でクラウドを使用するため)。だから私はこれらの指示に従い 、SDK をインストールするために composer を選択します (symfony は既に composer を使用しているため)。

ソース ファイルのダウンロードが機能し、ベンダー ディレクトリで AWS ソースを取得しました。しかし、私のコード ソースでは、Amazon のすべてのクラスがエラーを返します (「致命的なエラー: クラス [...] が見つかりません [...]」)。

したがって、問題はsymfonyがソースファイルをロードしないことにあると思います。インターネットで検索してみたり、一人で方法を探したり(ファイルを調べたり…)

しかし、ソースファイルをロードする方法が見つかりませんでした。AppKernerl に SDK のビルド ディレクトリを追加しようとしています。何も起こりません。(ビルド ディレクトリにある phar-stub.php) という名前のファイルを require_once しようとしました。エラー表示。

誰か助けてください

4

3 に答える 3

2

公式の AWS SDK をラップするだけの Symfony2 バンドルを使用できます - https://github.com/seferov/aws-bundle

バンドルを構成した後、次のように簡単に aws クライアントを呼び出すことができます。

// ...
public function indexAction()
{
    $ec2 = $this->get('aws.ec2');
    // ...
} 
于 2014-06-18T08:41:48.003 に答える
0

useクラス定義にステートメントを追加する必要があります。インポートされたクラスは自動的にロードされます。

例えば:

  <?php
   namespace Acme\DemoBundle\Controller;

   use Aws\Ec2\Ec2Client;

   class DefaultController
   {
      function indexAction(){
          $ec2 = new Ec2Client();
          ....
      }

   }

http://php.net/manual/en/language.namespaces.importing.php http://getcomposer.org/doc/01-basic-usage.md#autoloading

于 2013-05-22T15:36:42.263 に答える