2014-05-06 4 views
1

Je suis en train de télécharger un fichier vidéo dans le compartiment S3 en utilisant le PHP-SDK et un téléchargement en plusieurs parties. J'ai réussi à le faire fonctionner via ajax déjà, mais je veux savoir comment calculer et retourner la progression? J'ai déjà fait beaucoup de recherches mais je n'ai encore trouvé aucune solution.Télécharger le pourcentage de progression en ajax télécharger dans le compartiment S3 en utilisant le php-sdk avec Mulitpart télécharger

Toute aide hautement appréciée.

+0

Vous devriez fournir quelques exemples de ce que vous avez fait :) btw, avez-vous réussi à faire ce travail peut-être? – trainoasis

+1

@trainoasis hey, jetez un oeil à ma réponse –

Répondre

0

Voici un exemple en utilisant putObject, qui peut être converti en MultipartUpload:

$client = new S3Client(/* config */); 

$result = $client->putObject([ 
    'Bucket'  => 'bucket-name', 
    'Key'  => 'bucket-name/file.ext', 
    'SourceFile' => 'local-file.ext', 
    'ContentType' => 'application/pdf', 
    '@http' => [ 
     'progress' => function ($downloadTotalSize, $downloadSizeSoFar, $uploadTotalSize, $uploadSizeSoFar) { 
      printf(
       "%s of %s downloaded, %s of %s uploaded.\n", 
       $downloadSizeSoFar, 
       $downloadTotalSize, 
       $uploadSizeSoFar, 
       $uploadTotalSize 
      ); 
     } 
    ] 
]); 

Ceci est expliqué dans la documentation AWS - S3 Config section. Il fonctionne en exposant la propriété progress de GuzzleHttp, comme expliqué dans this SO answer.

Questions connexes