scusate vi pongo il mio problema.
Se io avessi la data in inglese che deriva da questo script:
<?=$data_inizio->format('d F Y')?>
che a sua volta:
$data_inizio = new DateTime($row->DataInizio);
come faccio a passargli il mese in italiano?
scusate vi pongo il mio problema.
Se io avessi la data in inglese che deriva da questo script:
<?=$data_inizio->format('d F Y')?>
che a sua volta:
$data_inizio = new DateTime($row->DataInizio);
come faccio a passargli il mese in italiano?
Dovresti fare una cosa così
Codice PHP:
$search = array('January','February','March',...);
$replace = array('Gennaio','Febbraio','Marzo',...);
$data = $data_inizio->format('d F Y');
$data_ita = str_replace($search,$replace,$data);
MA MA MA MA usare i parametri per le timezones nelloggetto dateTime ??? NO ?
Mah io da quando hanno messo a disposizione quella classe non ho piu' dovuto scrivere 1 array con i mesi che fosse 1 !
ti posso chiedere maggiori info al riguardo?
Come avresti fatto?
Tu hai gia' l'oggetto date time ... lo veedo dal fatto che usi $data->format
http://www.php.net/manual/en/datetime.format.php
Se guardi tra le funzioni disponibili trovi :
http://www.php.net/manual/en/datetime.settimezone.php
e quindi :
http://www.php.net/manual/en/class.datetimezone.php
MA, c'e' anche di piu' per l'oggetto Date Time e per la domanda in questione :
http://www.php.net/manual/en/book.datetime.php
Inioltre se selezioni una timezone vedrai che :
http://www.php.net/manual/en/timezones.europe.php
Il tutto per arrivare qui :
http://it2.php.net/manual/en/function.setlocale.php
E quindi dovo aver visto un po' in generale come fungono le date arriveri a questa conclusione :
Codice PHP:
echo "<pre>";
setlocale(LC_TIME, 'it_IT');
echo strftime("%A %e %B %Y" )."\n";
setlocale(LC_TIME, 'en_US');
echo strftime("%A %e %B %Y" )."\n";
setlocale(LC_TIME, 'de_DE');
echo strftime("%A %e %B %Y" )."\n";
setlocale(LC_TIME, 'es_ES');
echo strftime("%A %e %B %Y" )."\n";
setlocale(LC_TIME, 'fr_FR');
echo strftime("%A %e %B %Y" )."\n";
echo "</pre>";
E come vedi php gia' ti fornisce un ottimo set di dati, prefetti per la gestione dei formati multilingua, ma non solo delle date anche delle valute ed altro. Ti base solamente impostare correttamente il settaggio del "locale" per la lingua impostata dall'utente, oppure presa anche dal suo user-agent o da dove ti pare. In questo modo puoi serparare corretamente la parte di gestione dei dati da quella di visualizzazione
EDIT : mi sono dimenticato di linkarti questa :
http://it2.php.net/manual/en/function.strftime.php