人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPテンプレートエンジンの「Smarty」で質問です。
現在、201109で年月を保持しているのですが
これを出力時に、2011年9月に変換するには
どうすればよいでしょうか?
ハイフンが入っていれば|date_formatが使えるのですが。。。

●質問者: makocan
●カテゴリ:インターネット ウェブ制作
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● じゅぴたー
●50ポイント

変数 $yyyymm に格納されているとしたら、正規表現を使って次のように記述します。

{$yyyymm|regex_replace:"/^(....)(..)/":"\\1年\\2月"}

2 ● うぃんど
●50ポイント

じゅぴたー(id:Jupiter2100)さんのでおおむねOKなんですけど、「次のように記述します」と言い切るには考慮不足の感がありますし、記述方法が古い時代のもののようにも見受けられます

問題点

1.ドットをいくつも並べるのはコーディングミスを引き起こしやすい

2.ドットでは数字以外も受け入れてしまう

3.終端記号が無いので桁数溢れが無視される

{$yyyymm|regex_replace:'/^(\d{4})(\d{2})$/':'$1年$2月'}
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ