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)