初投稿です。よろしくお願いします。
本来PHP側で操作すべきと思いますが
仕事の都合上、Smartyのテンプレート側でやらねばならず、ご相談です。
###前提・実現したいこと
Smartyのテンプレート側で
文字列「2016年9月1日(木)~」や「2016年11月01日(火)~」と
現在日時を比較して、現在日時より前なら表示しないという事をやりたいと思っています。
※文字列は必ず「yyyy年m月d日」という文字から始まります
※ただし月と日は0埋めの時も、0埋めでない時もあります
###該当のソースコード
{if $カラム名|mb_substr:0:11 > $smarty.now|date_format:"%Y年%m月%d日" } {if ($カラム名|mb_substr:6:1 != '月' && $カラム名|mb_substr:0:11 > $smarty.now|date_format:"%Y年%m月%d日") or ($カラム名|mb_substr:6:1 == '月' && $カラム名|mb_substr:0:9 > $smarty.now|date_format:"%Y年%-m月%-d日")}
###試したこと
1つ目のコードだとそもそも0埋めでないケースに対応できていません
Smartyのdate_format:"%Y年%m月%d日"が必ず0埋めで認識されるという情報を見かけたため
試しに2つ目のコードにしてみましたが
この判定では効きませんでした。
###補足情報(言語/FW/ツール等のバージョンなど)
Smarty2.6.28
PHP5.4.45
RCMS
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/01 08:40
2016/11/01 09:15