[RESOLU] Téléchargement d'un fichier ZIP depuis un flux

Petit nouveau ! | 2 Messages

06 oct. 2023, 15:52

Bonjour,

J'ai fait plusieurs essais pour télécharger un fichier zip provenant d'un flux.
Mais je n'y arrive pas.
Lorsque j'ouvre le fichier, il est altéré !

Pour ce faire, j'utilise les lignes de code suivantes :

Code : Tout sélectionner

$url = "https://diffuseur.datatourisme.xx/webservice/b8300f90ed345e428732df10a71f9f7d/f708a82d-c588-49a9-b3d7-f74d7a75ff93"; $content = @file_get_contents($url ); $zip_file_name ='my_uplaoded.zip'; File::write($zip_file_name, $content);
(remplacer le xx par fr dans l'url)

J'ai essayé d'autre code plus ou moins compliqué, mais je n'ai pas réussi.
Quelqu'un peut il me donner le bon code à utiliser ?

Merci.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

06 oct. 2023, 16:44

Bonjour et bienvenue sur PHPfrance,

En fait ce n'est pas un zip mais un json transmis gzippé.

Voilà ce que je te propose :
// On récupère le fichier distant
$content = file_get_contents('https://diffuseur.datatourisme.fr/webservice/b8300f90ed345e428732df10a71f9f7d/f708a82d-c588-49a9-b3d7-f74d7a75ff93');

// Le flux récupéré est compressé en gzip => on le décompresse
$content = gzdecode($content);

// On enregistre ce contenu dans un fichier
file_put_contents('flux.json', $content);
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 2 Messages

07 oct. 2023, 16:21

Merci.