Lecture d'un fichier excel

Soyez le premier à donner votre avis sur cette source.

Vue 39 823 fois - Téléchargée 4 371 fois

Description

bonjour à tous, j'ai cherché pendant quelque temps un code pour lire les fichiers excels afin de mettre à jour ma base de donnée, de maniére automatique.
Et un bon jour je suis tombé dessus par azard sur internet. La classe n'est donc pas de moi par contre l'exemple qui tous simple,lui , est de ma conception.

Source / Exemple :


<?php

require_once 'Excel/reader.php';

// ExcelFile($filename, $encoding);
$data = new Spreadsheet_Excel_Reader();

// Set output Encoding.
$data->setOutputEncoding('CP1251');

/***

  • if you want you can change 'iconv' to mb_convert_encoding:
  • $data->setUTFEncoder('mb');
*
    • /
/***
  • By default rows & cols indeces start with 1
  • For change initial index use:
  • $data->setRowColOffset(0);
*
    • /
/***
  • Some function for formatting output.
  • $data->setDefaultFormat('%.2f');
  • setDefaultFormat - set format for columns with unknown formatting
*
  • $data->setColumnFormat(4, '%.3f');
  • setColumnFormat - set format for column (apply only to number fields)
*
    • /
$data->read('toto.xls'); /* $data->sheets[0]['numRows'] - count rows $data->sheets[0]['numCols'] - count columns $data->sheets[0]['cells'][$i][$j] - data from $i-row $j-column $data->sheets[0]['cellsInfo'][$i][$j] - extended info about cell $data->sheets[0]['cellsInfo'][$i][$j]['type'] = "date" | "number" | "unknown" if 'type' == "unknown" - use 'raw' value, because cell contain value with format '0.00'; $data->sheets[0]['cellsInfo'][$i][$j]['raw'] = value if cell without format $data->sheets[0]['cellsInfo'][$i][$j]['colspan'] $data->sheets[0]['cellsInfo'][$i][$j]['rowspan']
  • /
error_reporting(E_ALL ^ E_NOTICE); /* for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) { for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) { echo "".$data->sheets[0]['cells'][$i][$j]."<br>"; } echo "\n"; }
  • /
echo "".$data->sheets[0]['cells'][1][1]."<br>"; echo "".$data->sheets[0]['cells'][1][2]."<br>"; //print_r($data); //print_r($data->formatRecords); ?>

Conclusion :


voici le lien du sie ou je l'ai trouvé:
http://freshmeat.net/projects/phpexcelreader/
enfin bon voila, j'ai trouvé cela assez interessant, c'est pour cela que je le propose.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
1
Date d'inscription
lundi 31 mars 2008
Statut
Membre
Dernière intervention
5 juillet 2010

Merci beaucoup POUR CETTE SOURCE ;)
Messages postés
4
Date d'inscription
mercredi 5 mai 2010
Statut
Membre
Dernière intervention
5 mai 2010

Salut

c est bon en faite j ai trouvé.
Pour afficher le nom de la feuille :

echo "".$donne->boundsheets['0']['name']."
";

a plus tt le monde
Messages postés
4
Date d'inscription
mercredi 5 mai 2010
Statut
Membre
Dernière intervention
5 mai 2010

Bonjour

j'utilise ton petit script et il marche bien.
je voudrais juste la commande pour retrouver le nom de la feuille affin de pouvoir faire une recherche sur le nom de la feuille

merci pour vos réponses
Messages postés
1
Date d'inscription
vendredi 16 juin 2006
Statut
Membre
Dernière intervention
29 juin 2009

Bonjour à tous,

j'ai déjà essayé d'utiliser cette classe mais comme à peu prêt toutes les classes pour lire les fichiers excel, elles posent problème lorsque le fichier est trop gros. Soit en mémoire, soit en temps d'exécution. Sinon pour les formats date et autres fonctionnalités je vous propose d'utiliser la classe PHPExcel qui est vraiment bien faite mais pareil si le fichier est trop gros ça pose problème. Le mien faisait 5Mo et 14500 lignes et ça marchait pas même avec 512Mo de mémoire dans le php.ini.
Cordialement,

Toshysound
Messages postés
3
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
30 mars 2009

Bonjour à tous,

je veux lire une colonne de type date, mais la lecture se convertir en type texte.

si quelqu'un peux m'aider je lui serai reconnaissant.
merci d'avance.
@+
Afficher les 20 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (cs_cacoucatatonique)