(PHP) Traduzione delle date v2.0
Aggiornata la funzione date_it() di traduzione della data. In questa versione sono stati corretti alcuni errori che mi erano stati fatti presenti nei commenti alla versione precedente.
Ora la funzione non ripete continuamente i controlli su ogni giorno se è già stato trovato il giorno da tradurre e il matching delle stringhe è più accurato, in modo da non tradurre Mondey in Lunday cosa che invece prima avveniva.
<?php
// PHP function date_it();
//
// Author Diavolo_Rosso
// Version 2.0
// Writed 8 April 2007
// Updated 23 September 2007
function date_it($format, $ts = null) {
if ($ts == null) $ts = time();
$data = date($format, $ts);
// Giorni della settimana contratti
if (eregi('Mon[^d]', $data)) {
$data = eregi_replace('Mon', 'Lun', $data);
} elseif (eregi('Tue[^s]', $data)) {
$data = eregi_replace('Tue', 'Mar', $data);
} elseif (eregi('Wed[^n]', $data)) {
$data = eregi_replace('Wed', 'Mer', $data);
} elseif (eregi('Thu[^r]', $data)) {
$data = eregi_replace('Thu', 'Gio', $data);
} elseif (eregi('Fri[^d]', $data)) {
$data = eregi_replace('Fri', 'Ven', $data);
} elseif (eregi('Sat[^u]', $data)) {
$data = eregi_replace('Sat', 'Sab', $data);
} elseif (eregi('Sun[^d]', $data)) {
$data = eregi_replace('Sun', 'Dom', $data);
}
// Giorni della settimana estesi
if (eregi('Monday', $data)) {
$data = eregi_replace('Monday', 'Lunedi', $data);
} elseif (eregi('Tuesday', $data)) {
$data = eregi_replace('Tuesday', 'Martedi', $data);
} elseif (eregi('Wednesday', $data)) {
$data = eregi_replace('Wednesday', 'Mercoledi', $data);
} elseif (eregi('Thursday', $data)) {
$data = eregi_replace('Thursday', 'Giovedi', $data);
} elseif (eregi('Friday', $data)) {
$data = eregi_replace('Friday', 'Venerdi', $data);
} elseif (eregi('Saturday', $data)) {
$data = eregi_replace('Saturday', 'Sabato', $data);
} elseif (eregi('Sunday', $data)) {
$data = eregi_replace('Sunday', 'Domenica', $data);
}
// Mesi contratti
if (eregi('Jan[^u]', $data)) {
$data = eregi_replace('Jan', 'Gen', $data);
} elseif (eregi('May', $data)) {
if (eregi('M', $format)) {
$data = eregi_replace('May', 'Mag', $data);
}
} elseif (eregi('Jun[^e]', $data)) {
$data = eregi_replace('Jun', 'Giu', $data);
} elseif (eregi('Jul[^y]', $data)) {
$data = eregi_replace('Jul', 'Lug', $data);
} elseif (eregi('Aug[^u]', $data)) {
$data = eregi_replace('Aug', 'Ago', $data);
} elseif (eregi('Sep[^t]', $data)) {
$data = eregi_replace('Sep', 'Set', $data);
} elseif (eregi('Oct[^o]', $data)) {
$data = eregi_replace('Oct', 'Ott', $data);
} elseif (eregi('Dec[^e]', $data)) {
$data = eregi_replace('Dec', 'Dic', $data);
}
// Mesi estesi
if (eregi('January', $data)) {
$data = eregi_replace('January', 'Gennaio', $data);
} elseif (eregi('February', $data)) {
$data = eregi_replace('February', 'Febbraio', $data);
} elseif (eregi('March', $data)) {
$data = eregi_replace('March', 'Marzo', $data);
} elseif (eregi('April', $data)) {
$data = eregi_replace('April', 'Aprile', $data);
} elseif (eregi('May', $data)) {
if (eregi('F', $format)) {
$data = eregi_replace('May', 'Maggio', $data);
}
} elseif (eregi('June', $data)) {
$data = eregi_replace('June', 'Giugno', $data);
} elseif (eregi('July', $data)) {
$data = eregi_replace('July', 'Luglio', $data);
} elseif (eregi('August', $data)) {
$data = eregi_replace('August', 'Agosto', $data);
} elseif (eregi('September', $data)) {
$data = eregi_replace('September', 'Settembre', $data);
} elseif (eregi('October', $data)) {
$data = eregi_replace('October', 'Ottobre', $data);
} elseif (eregi('November', $data)) {
$data = eregi_replace('November', 'Novembre', $data);
} elseif (eregi('December', $data)) {
$data = eregi_replace('December', 'Dicembre', $data);
}
return $data;
}
?>