このページでは、SymfonyのFinderコンポーネントを使用して、次のようにS3バケットを反復処理できることを読みました(下にスクロールします)。
use Symfony\Component\Finder\Finder;
$s3 = new \Zend_Service_Amazon_S3($key, $secret);
$s3->registerStreamWrapper("s3");
$finder = new Finder();
$finder->name('photos*')->size('< 100K')->date('since 1 hour ago');
foreach ($finder->in('s3://bucket-name') as $file) {
// ... do something
print $file->getFilename()."\n";
}
しかし、PHP 5.3名前空間を使用していないため、\ Zend_Service_Amazon_S3クラスを取得する場所と、Symfonyで動作させる方法がわかりません。新しいzendフレームワークをダウンロードして、他のファイルを継承するS3.phpを見つけました。どこに置く必要があり、どのように含めることができますか?
補足:S3バケットを介して読み取ることもできるクラス(Orchestra S3 Stream)を見つけましたが、ファイルでパスの問題が発生したpearパッケージを使用しているため、インストールに失敗しました。Finderコンポーネントを使用できれば素晴らしいと思います。