Bonjour,

Je dois lire les propriétés de fichiers Excel.
Ils ont normalement été créés sous Office 2003.

J'étais parti sur un "reader" Excel5 à l'origine, mais suite à des plantages, je suis passé à Excel2007. Tout le traitement fonctionne (lecture des feuilles, recherche de cellules...), sauf la lecture des propriétés.

J'ai le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
$oBilan = new bilanExcel( $iIdDoc, TRUE, TRUE, 'Excel5' );
$oProp = $oBilan->oExcel->getProperties();
var_dump($oProp);echo "<br>";
 
$oBilan = new bilanExcel( $iIdDoc, TRUE, TRUE, 'Excel2007' );
$oProp = $oBilan->oExcel->getProperties();
var_dump($oProp);echo "<br>";
Avec Excel5, j'obtiens le résultat suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
object(PHPExcel_DocumentProperties)#20 (12) { ["_creator:private"]=> string(12) "Informatique" ["_lastModifiedBy:private"]=> string(14) "perso g" ["_created:private"]=> float(895592002) ["_modified:private"]=> float(1333097036) ["_title:private"]=> string(14) "42-EXP-ENR-177" ["_description:private"]=> string(17) "Agence de bassins" ["_subject:private"]=> string(0) "" ["_keywords:private"]=> string(0) "" ["_category:private"]=> string(0) "" ["_manager:private"]=> string(0) "" ["_company:private"]=> string(5) "AAPD" ["_customProperties:private"]=> array(0) { } }
Pour le même fichier, avec Excel2007, j'obtiens le résultat suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
object(PHPExcel_DocumentProperties)#20 (12) { ["_creator:private"]=> string(15) "Unknown Creator" ["_lastModifiedBy:private"]=> string(15) "Unknown Creator" ["_created:private"]=> int(1333101448) ["_modified:private"]=> int(1333101448) ["_title:private"]=> string(20) "Untitled Spreadsheet" ["_description:private"]=> string(0) "" ["_subject:private"]=> string(0) "" ["_keywords:private"]=> string(0) "" ["_category:private"]=> string(0) "" ["_manager:private"]=> string(0) "" ["_company:private"]=> string(21) "Microsoft Corporation" ["_customProperties:private"]=> array(0) { } }
Comme vous pouvez le voir, je n'ai pas les propriétés que je recherche.
Quelqu'un a-t-il une idée ?

A+

Gilles

PS : avec Excel2003XML, j'ai carrément un plantage à la création de l'objet Excel, je ne vais pas jusque là.