Valid XHTML     Valid CSS2    

Listing du fichier emarge_csv.php

 

00001     <?php
00002     #   # (gH)   -_-  emarge_csv.php  ;  TimeStamp (unix) : 04 Mars 2016 vers 16:44
00003     
00004     # liste d'émargement CSV (Excel) à partir d'un fichier texte
00005     # au format prénom(s) ; nom(s)
00006     
00007     # aide éventuelle
00008     
00009     if (!isset(
$argv[1])) {
00010     
00011        echo "Syntaxe : php emarge_csv.php FICHIER \n\n" 
;
00012        echo "Pour plus de détails sur le format du fichier d'entrée, consulter :\n\n" 
;
00013        echo "   http://forge.info.univ-angers.fr/~gh/Pagsd/pagsd3.php?solutions=1#tdm2\n" 
;
00014        echo "\n" 
;
00015        exit(-1
) ;
00016     
00017     } ; # fin si
00018     
00019     # vérification de l'existence du fichier
00020     
00021     $ficEnt 
$argv[1] ;
00022     $ficSor 
"emarge_php.csv" ;
00023     
00024     if (!file_exists
($ficEnt)) {
00025     
00026       echo "\n" 
;
00027       echo "Fichier 
$ficEnt non vu. STOP.\n" ;
00028       echo "\n" 
;
00029       exit(-2
) ;
00030     
00031     } # fin si
00032     
00033     # traitement du fichier ligne par ligne
00034     
00035     echo 
"\n" ;
00036     echo "Composition de la feuille d'émargement 
$ficSor à partir du fichier d'entrée $ficEnt\n" ;
00037     echo "\n" 
;
00038     
00039     $fhIn  
fopen($ficEnt,"r") ;
00040     $fhOut 
fopen($ficSor,"w") ;
00041     
00042     # on commence par écrire la ligne des entetes
00043     
00044     $ligSor 
" NOM , Prénom , Signature \n" ;
00045     fputs
($fhOut,$ligSor) ;
00046     
00047     while ($ligEnt
=fgets($fhIn,4096)) {
00048     
00049       # on ignore les commentaires et les lignes vides
00050       $ligEnt 
trim($ligEnt) ;
00051       if (strlen
($ligEnt)>0) {
00052          if (substr
($ligEnt,0,1) != "#") {
00053             $ligSor 
"" ;
00054             # on inverse nom et prénom  et on convertit nom en majuscules
00055             $tabInfo 
preg_split("/;/",$ligEnt) ;
00056             $ligSor 
.= strtoupper($tabInfo[1])." , ".$tabInfo[0] ;
00057             # on écrit la ligne dans le fichier de sortie
00058             $ligSor 
.= " , \n" ;
00059             fputs
($fhOut,$ligSor) ;
00060          } ; # fin si sur commentaire
00061       } ; 
# fin si sur ligne vide
00062     
00063     } ; 
# fin tant que
00064     
00065     fclose
($fhIn) ;
00066     fclose
($fhOut) ;
00067     
00068     echo "Vous pouvez utiliser le fichier 
$ficSor\n" ;
00069     echo "\n" 
;
00070     
00071     ?>

Pour ne pas voir les numéros de ligne, ajoutez &nl=non à la suite du nom du fichier.

 

 

retour gH    Retour à la page principale de   (gH)