Strano problema con explode di una data

neo996sps

Utente Attivo
31 Mag 2007
247
0
0
Trentino
Ciao a tutti,

dato che sono uno specialista a bloccarmi sulle cose più semplici oggi vi porto un nuovo problema. Devo fare la differenza tra due date in php per calcolare il numero di giorni. Sono partito in quarta e dopo un rapido ragionamento ho optato per questa soluzione: esplodo in due vettori separati le due date, poi calcolo da differenza di giorni, la differenza di mesi e la differenza di anni così posso scrivere tutti i dati.
Ecco un esempio

data inizio -> 01.01.2011
data fine -> 01.03.2012

se io esplodo la prima data avrò:

1° vettore -> datainizio[0]=01 datainizio[1]=01 annnoinizio[2]=2011
2° vettore -> datafine[0]=01 datafine[1]=03 annofine[2]=2011

Il problema è che il mio script non ne vuole sapere di scrivere correttamente i mesi. Infatti con questo set di istruzioni:

PHP:
$data_inizio = $_POST["data_inizio"];
   $exp_datainizio = explode(".", $data_inizio);
   $giorno_inizio = $exp_datainizio[0];
   $mese_inizio = $_exp_datainizio[1];
   $anno_inizio = $exp_datainizio[2];
   
   $exp_datafine = explode(".", $_POST["data_fine"]);
   $giorno_fine = $exp_datafine[0];
   $mese_fine = $exp_datafine[1];
   $anno_fine = $exp_datafine[2];
      
   print($_POST["data_inizio"]."<br />".$giorno_inizio."<br />".$giorno_inizio."<br />".$anno_inizio."<br /><br />");
   print($_POST["data_fine"]."<br />".$giorno_fine."<br />".$giorno_fine."<br />".$anno_fine."<br />");
mi viene scritto a video questo:

HTML:
03.10.2011
03
03
2011

05.10.2011
05
05
2011
Come mai?
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Prova:
PHP:
print($_POST["data_inizio"]."<br />".$giorno_inizio."<br />".$mese_inizio."<br />".$anno_inizio."<br /><br />");
   print($_POST["data_fine"]."<br />".$giorno_fine."<br />".$mese_fine."<br />".$anno_fine."<br />");
Magari non sei uno specialista a bloccarti sulle cose più semplici, è che ti vengono meglio quelle difficili:)
 
Ultima modifica:

neo996sps

Utente Attivo
31 Mag 2007
247
0
0
Trentino
ciao, adesso funziona tutto. Sembrerà quasi incredibile ma le cose più complicate mi riescono subito, quelle semplici a volte mi chiedono ore...
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Qualche applicazione per il debugging e lo uniti testing potrebbe farti risparmiare tempo e scocciature.