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 :

SPLFileInfo vs. PECL::FileInfo


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 178
    Points : 93
    Points
    93
    Par défaut SPLFileInfo vs. PECL::FileInfo
    Bonjour à tous,

    je suis en train de développer une plateforme web d'échange, et je suis amené à proposer l'upload de formats de fichiers assez divers. Jusqu'ici, je testais le type MIME des fichiers avec le module FileInfo de l'extension PECL (en local), mais il se trouve qu'OVH sur les offres mutualisées ne proposent pas cette option...

    Ils m'ont donc renvoyé à SplFileInfo... seulement, j'ai regardé la documentation, et je ne retrouve aucune méthode équivalente à celles de FileInfo telle que l'affichage du type MIME réel du fichier passé en paramètre... à ce propos, la documentation de SPLFileInfo est très loin d'être bien décrite, donc, la recherche des bonnes méthodes est assez ardue...

    savez-vous si SPLFileInfo permet effectivement de tester les types MIME des fichiers ?

    merci d'avance !

    Rolf IV

  2. #2
    Membre habitué Avatar de cynferdd
    Profil pro
    Analyste Développeur .Net, PHP, SQL Server
    Inscrit en
    Avril 2003
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Développeur .Net, PHP, SQL Server

    Informations forums :
    Inscription : Avril 2003
    Messages : 154
    Points : 190
    Points
    190
    Par défaut
    tu peux toujours tenter mime_content_type (attention, cette fonction est considérée comme deprecated, justement à cause de l'existence de fileinfo. Mais on ne sais jamais...)

    sinon tu as toujours
    SplFileInfo::getType ( ) . C'est ce qui a l'air de se rapprocher le plus de ce que tu cherches.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2006
    Messages : 89
    Points : 64
    Points
    64
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SplFileInfo::getType ( )
    Cette fonction me renvoit toujours la chaine "file", y'a-t-il une solution pour récupérer le type MIME avec SPLFileInfo?

    Merci!

  4. #4
    Membre régulier Avatar de foolib
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 111
    Points : 90
    Points
    90
    Par défaut fileinfo - Erreur de chargement
    Bonjour, mon problème n'est pas exactement le même mais je pense que vous pouvez m'aider ...
    j'aimerai pour identifier des fichiers issus d'une archive zip, identifier leur type en inspectant l'intégrité du fichier : j'ai donc fait des tests avec file info

    je tourne sous wamp 2.0 c
    version php 5.2.6

    j'ai activé l'extension "php_fileinfo" (disponible mais désactivée) puis redémaré le service, et (Sachant que les chemins sont les bons.) j'obtiens tout de même une erreur pour le code suivant :

    Code PHP
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $fichinfo = new finfo(FILEINFO_MIME,"../../projet/data/magic.mime"); # Retourne le type mime 
    if (!$finfo) {
        echo "Echec de l'ouverture de la base de données fileinfo";
    }else{
    # Récupère le mime-type d'un fichier spécifique
    echo $fichinfo->file('apercu.jpg');
     
    # Fermeture de la connexion
    $fichinfo->close();
    }
    Erreur :
    Warning: finfo::finfo() [finfo.finfo]: Failed to load magic database at 'C:\wamp\www\projet\data\magic.mime'

    Si je remplace le chemin du fichier magic "../../projet/data/magic.mime" par "../../projet/data/magic" (sans l'extension mime donc) l'erreur disparait mais le fileinfo n'identifie pas le type mime de mon fichier "apercu.jpg".
    la condition suvante est également éxécutée dasn ce dernier cas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (!$finfo) {
        echo "Echec de l'ouverture de la base de données fileinfo";
    }
    Merci d'avance !

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

Discussions similaires

  1. fileinfo qui ne fonctionne pas
    Par SegmentationFault dans le forum Langage
    Réponses: 2
    Dernier message: 09/04/2007, 18h31
  2. [PECL] Upload progress
    Par mathieugamin dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 20/02/2007, 14h42
  3. FileInfo - Récupérer «Comments» d'un exécutable
    Par DarkVader dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/10/2006, 18h41
  4. [VB.NET] Comment dériver la classe FileInfo ?
    Par toniolol dans le forum VB.NET
    Réponses: 4
    Dernier message: 07/07/2005, 19h03

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