Verwenden von AWS SDK für PHP 3.x: Rufen Sie die neuesten Objekte in einem S3-Bucket nach dem Zeitpunkt der letzten Änderung ab.
P粉262113569
P粉262113569 2023-07-28 11:50:32
0
1
538
<p>Ich versuche, mit AWS SDK für PHP 3.x das neueste Objekt in einem Bucket nach dem Zeitpunkt der letzten Änderung abzurufen. </p> <p>Ich habe gesehen, wie man die AWS CLI verwendet, um diese Funktionalität zu erreichen. Hier: </p> <ul> <li>Das neueste Objekt im S3-Bucket zum Zeitpunkt der letzten Änderung abrufen</li> <li>Rufen Sie das zuletzt geänderte Objekt aus S3 mit der AWS CLI ab</li> </ul> <p>Aber ich weiß nicht, wie ich das PHP SDK verwenden soll, um diese Funktion zu implementieren. </p> <pre class="brush:php;toolbar:false;">$S3Client = new AwsS3S3Client([ 'version' => 'neueste', 'region' => 'eu-west-3', 'Anmeldeinformationen' => 'key' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxx', 'geheim' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxx', ] ]); $startTime = strtotime('-5 Minuten'); $res = $S3Client->ListObjectsV2([ 'Bucket' => 'mein-Bucket', 'Präfix' => 'objects/', 'StartAfter' => $startTime ]) </pre> <p>Ich verwende die empfohlene ListObjectsV2-Methode. </p><p>Ich habe drei Fragen. </p><p><br /></p> <ol> <li><p>Wie soll ich die Ergebnisse nach LastModified sortieren? (Genau wie Sie es in der CLI tun können)</p> </li> <li><p>Ich habe einige Lebenszyklusrichtlinien, die sich auf meine Suchen auswirken, weil ich einige Ergebnisse erhalte, die in von GLACIER gespeicherte Objekte verschoben werden, was ich nicht möchte. </p> </li> <li><p>Ich möchte die Tags und Metadaten eines Objekts abrufen. Wie soll ich es bekommen? Möchten Sie x-amz-optional-object-attributes verwenden? wie benutzt man? </p> </li> </ol> <p>Übrigens scheint die Verwendung des StartAfter-Parameters nichts zu ändern. </p>
P粉262113569
P粉262113569

Antworte allen(1)
P粉068486220

  • 您需要在代码中实现该排序逻辑,S3Client / AWS不会默认支持此功能。这也意味着您需要列出所有对象(而不仅仅是前1000个),然后才能对它们进行排序,找出最新的对象。
  • 结果中包含了StorageClass属性,您可以/需要在进行排序或进一步处理结果之前对其进行过滤。
  • 仅通过列出操作是不可能实现的。您需要为您感兴趣的每个对象提交单独的GetObject请求。如果您想要同时获取成千上万个对象的元数据,您需要重新考虑您的方法,并且可能需要将此类数据存储在一个适当的可查询/可搜索的数据库中。
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage