IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Récupérez l'extension d'un fichier d'une URL [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 224
    Points : 201
    Points
    201
    Par défaut Récupérez l'extension d'un fichier d'une URL
    Souvent, lorsque l'on tombe sur une url, on ne sait pas qu'elle est l'extension du fichier vers lequel on attérit.

    Par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://www.developpez.com
    Bien souvent, il s'agit d'un fichier html ou php mais pas toujours...

    Je cherche un moyen de récupérer cette extension voir le type de donnée contenu dans le fichier ciblé mais de la manière la plus RAPIDE possible.

    En effet, je sais que je peux faire ca par exemple avec une fonction toute bête comme get_headers() ou autre, mais toutes les solutions que j'ai trouvés sont lentes.

    Comme cette opération devra être répété de très nombreuses fois, j'aimerais si possible éviter d'ouvrir le fichier cible (la pluspart des fonctions qui auraient pu être la solution de mon problème ouvrent le fichier...)

    Si vous avez une idée, ca serait vraiment simpa

  2. #2
    Membre habitué Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Points : 197
    Points
    197
    Par défaut
    bonjour, d'apres ce que j'ai compris.
    tu veux recuperer l'exention des fichiers.
    juste une question:
    est ce que les fichiers sont recuperés apartir d'une base de données ou non.

  3. #3
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    il veut dire que quand tu entres une URL pour accéder à un truc sur le net, il voudrait connaitre le type du fichier vers lequel redirige l'URL : .html, .php, .nawak...

    mais j'en ai pas la moindre idée
    Dia [ Page DVP ] [ Site pro ]

  4. #4
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Forges une requête avec la méthode HEAD :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    HEAD / HTTP/1.0
    Host: developpez.com
    Et analyse le champs Content-Type de la réponse. Peut-être que ca suffira.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 224
    Points : 201
    Points
    201
    Par défaut
    Citation Envoyé par Hephaistos007
    Forges une requête avec la méthode HEAD :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    HEAD / HTTP/1.0
    Host: developpez.com
    Et analyse le champs Content-Type de la réponse. Peut-être que ca suffira.
    Ca me dit vaguement quelque chose, mais je ne sais pas faire :'(

    J'avais testé la fonction get_headers de PHP qui me donne Content-type, mais ca prend un temps fou...

    Sinon, dans le pire des cas, je pense que je ferais le tout en Java...

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    Tu as essayé avec les regex ?

  7. #7
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Citation Envoyé par kalash_jako
    Ca me dit vaguement quelque chose, mais je ne sais pas faire :'(
    Regardes du coté des librairies PHP qui permettent de "forger" des requêtes HTTP facilement et de traiter les réponses.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 224
    Points : 201
    Points
    201
    Par défaut
    Citation Envoyé par P@T@p!Zz@
    Tu as essayé avec les regex ?
    Et je fais quoi avec la regex?

    Pour faire une regex, il faut:

    une regex (:p) et la partie à confronter à la regex.

    Que veux-tu que je test dans une regex?

    Citation Envoyé par Hephaistos007
    Regardes du coté des librairies PHP qui permettent de "forger" des requêtes HTTP facilement et de traiter les réponses.
    Merci bien, je vais voir ca...

  9. #9
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut
    Citation Envoyé par kalash_jako
    Sinon, dans le pire des cas, je pense que je ferais le tout en Java...
    Et tu peux me dire comment tu ferais ça, même en Java ? Tu peux récupérer les Headers et donc savoir le <content-type=text/html> par exemple, mais ça ne te dira jamais si l'extension du fichier est un .php ou .html. A mon avis c'est impossible

  10. #10
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Citation Envoyé par MiJack
    Et tu peux me dire comment tu ferais ça, même en Java ? Tu peux récupérer les Headers et donc savoir le <content-type=text/html> par exemple, mais ça ne te dira jamais si l'extension du fichier est un .php ou .html.
    Oui ca risque d'être un problème. Le type MIME risque d'être le type des données envoyées après interpretation par le serveur donc toujours text/html.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  11. #11
    Membre actif
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 224
    Points : 201
    Points
    201
    Par défaut
    Citation Envoyé par MiJack
    Et tu peux me dire comment tu ferais ça, même en Java ? Tu peux récupérer les Headers et donc savoir le <content-type=text/html> par exemple, mais ça ne te dira jamais si l'extension du fichier est un .php ou .html. A mon avis c'est impossible
    En Java, je peux récupérer le type MIME et c'est en fait ce que je souhaite.

    En PHP, lorsque je récupère le type MIME, lorsque le fichier est énorme, la fonction met beaucoup de temps à se réaliser; en Java (j'ai testé avec un fichier de 100Mo), ca va très vite.

    Je pense que je vais me contenter des réponses que vous m'avez fournis qui, au final répondent à mon problème.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Fabrique] Associer extension d'un fichier ouvert à une classe
    Par oodini dans le forum Design Patterns
    Réponses: 2
    Dernier message: 14/05/2011, 01h07
  2. Récupération de l'extension d'un fichier dans une requête
    Par stefsas dans le forum Développement
    Réponses: 3
    Dernier message: 08/07/2010, 14h36
  3. Lister l'esemble des fichiers présents à une URL donnée
    Par gabest dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 17/05/2006, 14h05
  4. [Applet] Parcourir tous les fichiers d'une URL
    Par Frac10 dans le forum Applets
    Réponses: 20
    Dernier message: 01/05/2006, 23h59
  5. Accéder au contenu d'un fichier via une URL en mode binaire
    Par sbelli dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 11/10/2005, 10h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo