Posizione del Parametro | Tipo | Obbligatorio | Default | Descrizione |
---|---|---|---|---|
1 | stringa | No | %b %e, %Y | E' il formato per la data in output. |
2 | stringa | No | nessuno | E' la data di default se la variabile in input è vuota. |
Questo modificatore formatta una data e un'ora nel formato dato di strftime(). Le date possono essere passate a Smarty come timestamp Unix, timestamp MySql o una qualsiasi stringa contenente mese giorno anno (riconoscibile da strtotime). I progettisti quindi possono usare date_format per avere il pieno controllo della formattazione della data. Se la data passata a date_format è vuota ed è presente un secondo parametro, verrà usato questo come data da formattare.
Example 5.8. date_format
<?php $smarty = new Smarty; $smarty->assign('yesterday', strtotime('-1 day')); $smarty->display('index.tpl'); ?>
Dove index.tpl è:
{$smarty.now|date_format} {$smarty.now|date_format:"%A, %B %e, %Y"} {$smarty.now|date_format:"%H:%M:%S"} {$yesterday|date_format} {$yesterday|date_format:"%A, %B %e, %Y"} {$yesterday|date_format:"%H:%M:%S"}
Questo stamperà:
Feb 6, 2001 Tuesday, February 6, 2001 14:33:00 Feb 5, 2001 Monday, February 5, 2001 14:33:00
Parametri di conversione di date_format:
%a - nome abbreviato del giorno della settimana in base all'impostazione di "locale"
%A - nome intero del giorno della settimana in base all'impostazione di "locale"
%b - nome abbreviato del mese in base all'impostazione di "locale"
%B - nome intero del mese in base all'impostazione di "locale"
%c - rappresentazione preferita di ora e data in base all'impostazione di "locale"
%C - numero del secolo (l'anno diviso per 100 e troncato ad intero, range da 00 a 99)
%d - giorno del mese come numero decimale (range da 00 a 31)
%D - corrisponde a %m/%d/%y
%e - giorno del mese come numero decimale; la cifra singola è preceduta da uno spazio (range da 1 a 31)
%g - anno in base alle settimane, su due cifre [00,99]
%G - anno in base alle settimane, su quattro cifre [0000,9999]
%h - corrisponde a %b
%H - ora come numero decimale, su 24 ore (range da 00 a 23)
%I - ora come numero decimale, su 12 ore (range da 01 a 12)
%j - giorno dell'anno come numero decimale (range da 001 a 366)
%k - ora (su 24 ore) con le cifre singole precedute da spazio (range da 0 a 23)
%l - ora (su 12 ore) con le cifre singole precedute da spazio (range da 1 a 12)
%m - mese come numero decimale (range da 01 a 12)
%M - minuto come numero decimale
%n - carattere di "a capo"
%p - `am' o `pm' (antimeridiane o postmeridiane) in base all'ora, o valore corrispondente in base all'impostazione di "locale"
%r - ora completa nella notazione con a.m. e p.m.
%R - ora completa nella notazione su 24 ore
%S - secondi come numero decimale
%t - carattere di tabulazione
%T - ora corrente, con formato equivalente a %H:%M:%S
%u - giorno della settimana come numero decimale [1,7], in cui 1 rappresenta Lunedì
%U - numero della settimana nell'anno come numero decimale, partendo dalla prima Domenica come primo giorno della prima settimana
%V - Il numero della settimana ISO 8601:1988 come numero decimale, range da 01 a 53, dove la settimana 1 è la prima ad avere almeno 4 giorni nell'anno, e Lunedì è il primo giorno della settimana.
%w - giorno della settimana come numero decimale, dove la Domenica è 0
%W - numero della settimana nell'anno come numero decimale, partendo dal primo lunedì come primo giorno della prima settimana
%x - rappresentazione preferita della data secondo l'impostazione di "locale", senza l'ora
%X - rappresentazione preferita dell'ora secondo l'impostazione di "locale", senza data
%y - anno come numero decimale su due cifre (range da 00 a 99)
%Y - anno come numero decimale su quattro cifre
%Z - time zone o nome o abbreviazione
%% - il carattere `%'
Nota per i programmatori
date_format è fondamentalmente un involucro per la funzione PHP strftime(). Potete avere disponibili più o meno specificatori di conversione, in base alla funzione strftime() del sistema su cui PHP è stato compilato. Controllate le pagine di manuale del vostro sistema per una lista completa degli specificatori validi.