Advertisement
Guest User

Calcolo Spesa

a guest
Oct 30th, 2012
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.83 KB | None | 0 0
  1. <?php
  2. /***
  3.  * Calcolo Spesa Mensile v. 0.0.1 by Gianluigi (aka A35G)
  4.  * basato su uno script bash di Emanuele (aka P|xeL)
  5.  * http://www.dreamsworld.it/emanuele/2010-03-01/script-bash-per-il-totale-della-propria-spesa-mensile-o/
  6.  ***/
  7.  
  8. /***
  9.  * Struttura file spesa.txt:
  10.  *
  11.   Nome del mese
  12.   prezzo;eventuale identificativo spesa
  13.   prezzo;eventuale identificativo spesa
  14.  
  15.   Es:
  16.   Gennaio
  17.   10.00;2Kg Salsiccia
  18.   3.50;Figurine
  19.  ***/
  20.  
  21.   $period = Array ( "", "gennaio", "febbraio", "marzo", "aprile", "maggio", "giugno", "luglio", "agosto", "settembre", "ottobre", "novembre", "dicembre" );
  22.  
  23.   /*** Specifico il file da leggere ***/
  24.   $file_spesa = "spesa.txt";
  25.  
  26.   /*** Controllo se il file esiste e se lo posso aprire in lettura ***/
  27.   if ( file_exists ( $file_spesa ) && is_readable ( $file_spesa ) ) {
  28.  
  29.     /*** Controllo che il file sia pieno ***/
  30.     $size_f = @filesize ( $file_spesa );
  31.  
  32.     clearstatcache();
  33.  
  34.     if ( $size_f > 0 ) {
  35.  
  36.       $vfile = fopen ( $file_spesa, "r" );
  37.       $delimiter = "\n";
  38.       $i = $tot_sp = 0;
  39.       $mes = "";
  40.  
  41.       while ( !feof ( $vfile ) ) {
  42.  
  43.         $buffer = stream_get_line ( $vfile, 1024, $delimiter );
  44.  
  45.         if ( $i == 0 ) { $mes = strtolower ( $buffer ); }
  46.         else {
  47.  
  48.           $fcp = explode ( ";", $buffer );
  49.           if ( is_numeric ( $fcp[0] ) ) { $tot_sp = ( $tot_sp + $fcp[0] ); }
  50.  
  51.         }
  52.  
  53.         $i++;
  54.  
  55.       }
  56.  
  57.       fclose ( $vfile );
  58.  
  59.       $rif = array_flip ( $period );
  60.       $num_d = date ( "t", $rif[$mes] );
  61.  
  62.       echo "La somma per il mese di " . ucfirst ( $mes ) . " &egrave; " . $tot_sp . " &euro;...<br />La spesa media &egrave; di " . ( $tot_sp/$num_d ) . " &euro; al giorno.";
  63.  
  64.     } else { echo "Il file da leggere risulta vuoto."; }
  65.  
  66.   } else { echo "File inesistente o non si hanno i permessi di aprirlo in lettura."; }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement