Php : téléchargement de gros fichiers XML
miss Ref
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
miss Ref Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
miss Ref Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je fais des traitement sur des fichier XML distant mais que je télécharge au préalable (je les sauvegarde sur mon serveur)
J'ai un problème avec les gros fichiers (ça peut aller jusqu'à 500Mo)
En même temps j'avoue que j'y vais un peu à la brut en copiant.
Voila mon code:
Je fais des traitement sur des fichier XML distant mais que je télécharge au préalable (je les sauvegarde sur mon serveur)
J'ai un problème avec les gros fichiers (ça peut aller jusqu'à 500Mo)
En même temps j'avoue que j'y vais un peu à la brut en copiant.
Voila mon code:
$url_file = "http://www.serveurdistant.com/fichier.xml";//fichier distant $url_local = "files/fichier.xml";//fichier sur mon serveur //lecture du fichier distant $handler = fopen("".$url_file, "r"); $contents = ''; if($handler) while(!feof($handler)) $contents .= fread($handler, 8192); fclose($handler); //écriture dans le fichier local $handlew = fopen($url_local, "w"); fwrite($handlew, $contents); fclose($handlew);
A voir également:
- Php : téléchargement de gros fichiers XML
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
2 réponses
J'ai essayé avec cURl mais impossible avec un fichier de 500Mo
J'ai l'impression que c'est un problème de timeout:
-j'ai fixé à 3600 le CURLOPT_TIMEOUT et CURLOPT_CONNECTTIMEOUT.
-j'ai ajouté ini_set('max_execution_time', 0) pour un temps d'exécution infini
mais sans aucun effet.
jusqu'à 50Mo ça marche sans problème.
Je continue mes tests et je vous tien s au courant.
J'ai l'impression que c'est un problème de timeout:
-j'ai fixé à 3600 le CURLOPT_TIMEOUT et CURLOPT_CONNECTTIMEOUT.
-j'ai ajouté ini_set('max_execution_time', 0) pour un temps d'exécution infini
mais sans aucun effet.
jusqu'à 50Mo ça marche sans problème.
Je continue mes tests et je vous tien s au courant.