Visualizzazione risultati 1 fino 2 di 2

Discussione: le funzioni mktime e strtotime mi ritornano la Unix Epoch

  1. #1
    mawaqit non è connesso Neofita
    Data registrazione
    02-08-2014
    Messaggi
    2

    Predefinito le funzioni mktime e strtotime mi ritornano la Unix Epoch

    Ciao,
    con il codice seguente:
    Codice PHP:
    $grdate_calc = "01-09-2038";
    $gryear = (int) substr($grdate_calc,6,4);
    $grmonth = (int) substr($grdate_calc, 3,2);
    $grday = (int) substr($grdate_calc,0,2);
    $grtime = mktime ( 0, 0, 0, $grmonth, $grday, $gryear);
    $grdate = date('d-m-Y',$grtime);
    echo
    $grdate_calc." AAA ".$grdate." AAA ".$gryear.$grmonth.$grday."AAAA".$grtime;
    ottengo l'output:
    Codice:
    01-09-2038 AAA 01-01-1970 AAA 203891AAAA
    sul mio portale altervita.org
    mentre sul mio ambiente locale ottengo correttamente:
    Codice:
    01-09-2038 AAA 01-09-2038 AAA 203891AAAA2166908400
    a voi funziona correttamente?
    Grazie,

  2. #2
    mawaqit non è connesso Neofita
    Data registrazione
    02-08-2014
    Messaggi
    2

    Predefinito

    Ciao,
    ho scoperto il problema.
    Nella documentazione php di mktime:
    Year può avere sia 2 che 4 cifre, con valori compresi tra 0-69 e 2000-2069 oppure tra 70-99 e 1970-1999 (sui sistemi dove time_t è un intero segnato a 32bit, come sulla maggior parte dei PC di oggi, l'intervallo valido per year è tra 1902 e 2037).
    Io indicavo l'anno 2038 quindi andavo oltre il limite di 2037.

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •