{$smarty.now}で日時を取得
Smartyで日時を取得する場合には{$smarty.now}を使用します。
ただ、
{$smarty.now}で扱われるのはタイムスタンプの為、
ユーザー側ページに日時を公開する場合には、
date_formatという修飾子を用いてフォーマットを指定します。
例えば、
現在の日付と日時を「○○○○-○○-○○ ○○:○○:○○」という形式で表示したい場合には
{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}
とするだけです。
また、
日本語のサイトで日付を表示する場合には、
「○○○○年○○月○○日」
としたいですね。
その場合には、
{$smarty.now|date_format:"%Y年%m月%d日"}
とするだけです。
ただし、
これだと「2018年08月09日」というように2桁にフォーマットされるので、
「月」や「日」の頭に「0(ゼロ)」が付いてしまいます。
Smartyのマニュアル:https://www.smarty.net/docsv2/ja/language.modifier.date.format.tpl
を確認しても、
先頭に「0」を付けずに表示させるフォーマットが無いようです。
もしかして、先頭に「0」を付けない方法がない!?
なんてことはありません。
「0」を付けずに日付けを表示したい場合には、
{$smarty.now|date_format:"%Y年%-m月%-d日"}
と「-m」や「-d」のようにすればOKです。
これで、
「2018年8月9日」
と表示されるようになります。
この記事へのコメントはありません。