Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Esiste una funzioneche calcola la differenza in giorni fra 2 date

    Ho 2 date in questo formato:
    2005-10-01
    2005-09-15
    Esiste una funzioneche calcola la differenza in giorni fra 2 date?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    240

    mktime()

    usa

    codice:
    mktime ( int hour, int minute, int second, int month, int day, int year [, int is_dst])
    is_dst può essere impostato su 1 se l'orario è nell'ora legale, 0 altrimenti, o -1 (di default) se è sconosciuta la presenza dell'ora legale o meno. Se è sconosciuto, il PHP proverà ad impostarlo da se. Questo può causare un risultato non aspettato (ma non sbagliato).


    dopodichè fai la sottrazione normale
    codice:
    $data 1 = mktime ( int hour, int minute, int second, int month, int day, int year [, int is_dst]);
    $data2 =  mktime ( int hour, int minute, int second, int month, int day, int year [, int is_dst]);
    $ris = $data1-$data2;

    poi usi per riportarlo in formato data
    strftime ( string format [, int timestamp])

  3. #3

    Io ho fatto così

    $data_esame_gg = substr($_POST['data_esame'],8,2);
    $data_esame_mm = substr($_POST['data_esame'],5,2);
    $data_esame_aa = substr($_POST['data_esame'],0,4);
    $data_prenotazione_gg = substr($_POST['data_prenotazione'],8,2);
    $data_prenotazione_mm = substr($_POST['data_prenotazione'],5,2);
    $data_prenotazione_aa = substr($_POST['data_prenotazione'],0,4);
    $timestamp_esame = mktime (0,0,0,$data_esame_mm, $data_esame_gg, $data_esame_aa);
    $timestamp_prenotazione = mktime (0,0,0,$data_prenotazione_mm, $data_prenotazione_gg, $data_prenotazione_aa);
    $num_secondi_accettabili = 2*24*60*60;
    if ($timestamp_esame - $timestamp_prenotazione > $num_secondi_accettabili)

  4. #4
    mi serve solo una funzione che calcola quanti giornimancano alla fine del mese...ne sapete una grazie

  5. #5
    php non ha funzioni specifiche di calcolo delle date. Mysql ne ha parecchie. Dipende anche dalla versione di mysql.

    In php puoi fare semplicemente tu una funzione ad hoc. Per esempio:
    codice:
    Function NumDay()   {
    
        $fine_mese = mktime(23,59,59, date('m') + 1, 0, date('Y') );
        $diff = $fine_mese - time();
        $giorni = floor($diff / 86400);
        return  $giorni;
    }
    
    // utilizzo
    echo " Mancano ". NumDay(). " giorni a fine mese";

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.