Informations sur un fichier : Différence entre versions

De OviWiki
Aller à : navigation, rechercher
 
(11 révisions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
[[Catégorie:Documentation des librairies]]
 
{{Incomplet}}
 
 
 
Pour obtenir des informations sur un fichiers, le format des informations remontées respectent le plus possible les recommandations de [http://freedesktop.org/ freedesktop.org]
 
Pour obtenir des informations sur un fichiers, le format des informations remontées respectent le plus possible les recommandations de [http://freedesktop.org/ freedesktop.org]
  
{{Fonctionnalité|path=FileInfos|addon=[[LibFileManagement]]|version=0.0.4}}
+
{{Fonctionnalité|path=FileInfos|addon=[[LibFileManagement]]|version=0.2.5}}
  
 
== getMimeTypeFromFile ==
 
== getMimeTypeFromFile ==
Ligne 29 : Ligne 26 :
 
Obtenir les métadonnés d'un fichier.
 
Obtenir les métadonnés d'un fichier.
  
la méthode retourne un tableau contenant les métadonnés en respectant les recommandations : [http://freedesktop.org/wiki/Specifications/shared-filemetadata-spec]
+
la méthode retourne un objet permettant d'obtenir les métadonnés en respectant les recommandations : [http://freedesktop.org/wiki/Specifications/shared-filemetadata-spec].
  
{{Information|Le format n'est pas encore défini}}
 
  
 
=== types de fichiers supportés ===
 
=== types de fichiers supportés ===
  
* Document HTML
+
* Documents HTML
* Document PDF (avec l'exécutable pdfinfo)
+
* Documents PDF (avec l'exécutable pdfinfo)
* Document ODT
+
* Documents ODT
 +
* Documents DOCX
 +
* Documents XLSX
 
* Image jpeg (avec le module de php [http://fr.php.net/exif exif])
 
* Image jpeg (avec le module de php [http://fr.php.net/exif exif])
 
* Fichier mp3 (avec le module de php [http://fr.php.net/id3 id3])
 
* Fichier mp3 (avec le module de php [http://fr.php.net/id3 id3])
 
* Vidéo WMV, AVI, MPG, MOV, MP4 (avec le module de php [http://ffmpeg-php.sourceforge.net/ ffmpeg])
 
* Vidéo WMV, AVI, MPG, MOV, MP4 (avec le module de php [http://ffmpeg-php.sourceforge.net/ ffmpeg])
 +
* Archives ZIP
 +
 +
=== Objets ===
 +
 +
 +
==== Container des espaces de noms ====
 +
 +
La méthode <code>getMetadata()</code> retourne un objet <code>lfm_MetaNamespaces</code> qui permet d'obtenir les espaces de noms utilisables pour le fichier passé en paramètre à <code>getMetadata()</code>.
 +
 +
Les méthodes utilisables sur cet objet sont :
 +
 +
* <code>getAllNs()</code> retourne un tableau contenant les espaces de noms
 +
* <code>getFilePath()</code> retourne l'emplacement du fichier
 +
 +
 +
Les propriétés utilisables sur cet objet sont les espaces de noms autorisés sur le fichier, par exemple Doc, Audio, Image, File.
 +
 +
 +
 +
==== Les espaces de noms ====
 +
 +
Les objets des espaces de noms héritent de la classe <code>lfm_MetadataCollection</code> et sont spécifiques en fonction du type de fichier et du nom de l'espace de nom.
 +
 +
Les méthodes utilisables sur cet objet sont :
 +
 +
* <code>getNamespaceName()</code>
 +
* <code>getNamespaceDescription()</code> : retourne la description internationalisée de l'espace de nom
 +
* <code>getAllMeta()</code> : retourne la liste des métadonnés disponibles
 +
 +
 +
Les propriétés utilisables sur cet objet sont les métadonnés autorisés de l'espace de nom.
 +
 +
==== Exceptions ====
 +
 +
 +
Lorsque une métadonné n'est pas supporté car le type de fichier est incompatible ou que l'outil externe nécessaire n'est pas présent, une exception <code>lfm_MetadataException</code> est levée.
 +
 +
=== Exemples ===
 +
 +
Obtenir le titre d'un document :
 +
 +
<source lang="php">
 +
$meta = $fileinfo->getMetadata('fichier');
 +
try {
 +
echo $meta->Doc->Title;
 +
} catch(lfm_MetadataException $e) {
 +
echo 'non supporté par le système';
 +
}
 +
</source>
 +
 +
 +
Obtenir toutes les metadonnés d'un fichier :
 +
 +
<source lang="php">
 +
 +
$m = $fileinfo->getMetadata('fichier');
 +
 +
foreach($m->getAllNs() as $ns) {
 +
 +
$meta = $m->$ns;
 +
foreach($meta->getAllMeta() as $name) {
 +
 +
echo $meta->getTitle($name);
 +
echo $meta->$name;
 +
}
 +
}
 +
 +
</source>
 +
 +
 +
=== Développement ===
 +
 +
* http://en.wikipedia.org/wiki/Extensible_Metadata_Platform
 +
* http://www.ozhiker.com/electronics/pjmt/
  
 
== getGenericClassName ==
 
== getGenericClassName ==

Version actuelle en date du 22 mai 2009 à 10:45

Pour obtenir des informations sur un fichiers, le format des informations remontées respectent le plus possible les recommandations de freedesktop.org

Le chemin complet de la fonctionnalité
FileInfos
Documentation du parent
Pas de parent
Module
LibFileManagement
version du module
0.2.5


getDescription

Méthode commune à toutes les librairies pour obtenir la description de l'objet partagé.

$instance = bab_functionality::get('FileInfos');

$description = $instance->getDescription();

getMimeTypeFromFile

Cette méthode essai d'évaluer le type mime d'un fichier en utilisant l'extension php fileinfo ou la commande file du système, si aucune de ces deux méthode n'est disponible, le type mime sera évalué a partir de l'extension du fichier.

Si le fichier est en lecture seule la méthode retourne false

getMimeTypeFromExtension

Cette méthode essai d'évaluer le type mime à partir de l'extension. La liste des types mime utilisée est celle du noyau d'Ovidentia

getFileTypeFromMimeType

Cette méthode retourne une description du type de fichier en fonction du type mime.

Les langues supportées sont :

  • Anglais
  • Français

getMetadata

Obtenir les métadonnés d'un fichier.

la méthode retourne un objet permettant d'obtenir les métadonnés en respectant les recommandations : [1].


types de fichiers supportés

  • Documents HTML
  • Documents PDF (avec l'exécutable pdfinfo)
  • Documents ODT
  • Documents DOCX
  • Documents XLSX
  • Image jpeg (avec le module de php exif)
  • Fichier mp3 (avec le module de php id3)
  • Vidéo WMV, AVI, MPG, MOV, MP4 (avec le module de php ffmpeg)
  • Archives ZIP

Objets

Container des espaces de noms

La méthode getMetadata() retourne un objet lfm_MetaNamespaces qui permet d'obtenir les espaces de noms utilisables pour le fichier passé en paramètre à getMetadata().

Les méthodes utilisables sur cet objet sont :

  • getAllNs() retourne un tableau contenant les espaces de noms
  • getFilePath() retourne l'emplacement du fichier


Les propriétés utilisables sur cet objet sont les espaces de noms autorisés sur le fichier, par exemple Doc, Audio, Image, File.


Les espaces de noms

Les objets des espaces de noms héritent de la classe lfm_MetadataCollection et sont spécifiques en fonction du type de fichier et du nom de l'espace de nom.

Les méthodes utilisables sur cet objet sont :

  • getNamespaceName()
  • getNamespaceDescription() : retourne la description internationalisée de l'espace de nom
  • getAllMeta() : retourne la liste des métadonnés disponibles


Les propriétés utilisables sur cet objet sont les métadonnés autorisés de l'espace de nom.

Exceptions

Lorsque une métadonné n'est pas supporté car le type de fichier est incompatible ou que l'outil externe nécessaire n'est pas présent, une exception lfm_MetadataException est levée.

Exemples

Obtenir le titre d'un document :

<source lang="php"> $meta = $fileinfo->getMetadata('fichier'); try { echo $meta->Doc->Title; } catch(lfm_MetadataException $e) { echo 'non supporté par le système'; } </source>


Obtenir toutes les metadonnés d'un fichier :

<source lang="php">

$m = $fileinfo->getMetadata('fichier');

foreach($m->getAllNs() as $ns) {

$meta = $m->$ns; foreach($meta->getAllMeta() as $name) {

echo $meta->getTitle($name); echo $meta->$name; } }

</source>


Développement

getGenericClassName

Obtenir un nom de classe générique pour un fichier. Un de ces noms sera retourné, il pourra être utilisé pour afficher une icône pour le fichier

  1. mimetype-audio-x-generic
  2. mimetype-image-x-generic
  3. mimetype-package-x-generic
  4. mimetype-text-x-generic
  5. mimetype-video-x-generic
  6. mimetype-x-office-document
  7. mimetype-x-office-presentation
  8. mimetype-x-office-spreadsheet
  9. mimetype-unknown


Spécification des icones