Valider 5d300121 rédigé par cerdic's avatar cerdic
Parcourir les fichiers

recuperer_page(), recuperer_lapage() et recuperer_entetes() sont incompletes...

recuperer_page(), recuperer_lapage() et recuperer_entetes() sont incompletes et ne permettent pas de récuperer le contenu d'une URL qui n'a pas un status 200, ni de differencier une URL completement invalide d'une page en erreur temporaire, ni de suivre une redirection vers une url numerique.

On remet tout au propre :

- recuperer_entetes_complets()  renvoie de façon homogène un tableau associatif contenant status, headers, last_modified et location. Seul un echec complet de la connexion provoque le renvoie d'un booleen false
recuperer_entetes() est rebranchee sur recuperer_entetes_complets() et retraire la sortie pour renvoyer la meme chose qu'auparavant (compatibilite)

- recuperer_body() beneficie du report de r20113 pour prendre en charge proprement la copie du contenu dans un fichier. Ne faudrait-il pas traiter le cas ou le fichier est tronque par taille_max et possiblement invalide ?

- recuperer_url() remplace a la fois recuperer_page() et recuperer_lapage() dont le decoupage etait purement artificiel pour pallier a la pauvrete du retour de la premiere.
Pour ne pas reconduire le risque de liste d'arguments peu explicites ou a double emploi, on fixe 2 arguments : l'url demandee et un tableau d'options associatives qui permet de modifier le comportement a volonte.
La fonction renvoie dans tous les cas un tableau associatif avec status, headers, page, last_modified, location, url recuperee, avec en cas de copie dans un fichier length et file
recuperer_page() et recuperer_lapage() sont branchees sur recuperer_url() avec les bonnes options pour renvoyer le meme resultat qu'auparavant (compatibilite)

+ PHPDoc sur les fonctions qui n'étaient pas encore documentées

A tester intensivement avant un eventuel backport sur la branche stable
parent 96c736f4
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter