【问题标题】:In codeigniter get file list from Amazon s3 bucket在 codeigniter 中从 Amazon s3 存储桶获取文件列表
【发布时间】:2016-02-01 22:57:06
【问题描述】:

我有一个 amazon s3 存储桶,里面有 20 多条记录。如何使用 PHP codeigniter 获取所有支持分页的文件名。

提前致谢!

【问题讨论】:

标签: php codeigniter amazon-s3


【解决方案1】:

首先你需要通过listObjects获取所有对象

$result = $s3->listObjects([
    'Bucket' => 'your-bucket-name'

]);

它将返回对象数组和链接(如果您的存储桶是公共的,那么您可以打开这些链接,否则您需要使用签名的 url 或 cloudfront)

我只是建议你使用 dataTable (它有分页,搜索),你的记录不像 30-40k 所以它会正常工作

正如您所要求的,您可以通过在构造函数中传递密钥和秘密来存储对象列表,我使用的是 aws phpsdk v3

  s3 = new Aws\S3\S3Client([
        'version' => 'latest',
        'region' => 'us-west-2',
        'credentials.ini' => [
            'key' => $credentials['key'],
            'secret' => $credentials['secret'],
        ],
   ]);

现在就

  $result = $s3->listObjects([
       'Bucket' => 'your-bucket-name'

   ]);

这就是你在你的桶中得到了所有对象的数组

【讨论】:

  • 感谢您的快速回复。如何在 php codeigniter 中使用 s3 bucket key 和 secret 获取文件列表?
  • 好吧,我不知道 CI 方式,但我可以告诉你如何使用 php 来获取它,
  • 感谢您的建议。从存储桶中获取所有对象,我使用了数据表插件。
  • @Anand 不客气,如果它解决了您的问题,请点击 check mart 接受此答案
  • 我想更改文本,即第 1 页(共 5 页),而不是数据表分页中的 1、2、3 个按钮。你对此有什么想法吗?
猜你喜欢
  • 2016-02-06
  • 1970-01-01
  • 1970-01-01
  • 2017-11-23
  • 1970-01-01
  • 2011-05-26
  • 2013-10-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多