giusto per completezza, nelle recenti versioni di php, finalmente, hanno aggiunto una gestione, benché non troppo completa, delle date.
In realtà scrivere
"domenica 5 aprile"
è un pò più complesso perché o lo fai sfruttando degli array con la lingua scritta li e poi con date leggi singolarmente il numero del mese, il numero del giorno della settimana e cosi via, oppure imposti la lingua, come variabile d'ambiente (LC_ALL o LC_TIME su ita o italian su windows mentre su it_IT su linux) e poi lanci il comando date normalmente
NOTA: windows, purtroppo, non tiene la codifica UTF8 per i locale quindi se devi visualizzarli su una pagina UTF8 devi eventualmente encodarli con utf8_encode
Con questo comando
http://it2.php.net/manual/en/function.date-create.php
puoi creare gli oggetti DateTime da manipolare.
Qui trovi informazioni sull'oggetto DateTime
http://it2.php.net/manual/en/class.datetime.php
Se ad esempio hai bisogno di una data riferita al primo del mese corrente
codice:
setlocale('LC_ALL', 'ita', 'it_IT');
date_default_timezone_set('Europe/Rome');
.
.
.
$dateTimeObject = date_create(sprintf('%04d-%02d-01', date('Y'), date('M')));
.
.
.
$lastDayOfTheMonth = date('t');
for($day=0; $day<lastDayOfTheMonth; $day++)
{
echo $dateTimeObject->format('l, j F Y') . "
\r\n";
}
questo codice (che ho scritto al volo e non ho minimamente testato quindi è da controllare con attenzione) ti dovrebbe stampare l'elenco dei giorni del mese nel formato NOME-GIORNO, NUMERO-GIORNO NOME-MESE ANNO