• ベストアンサー

Smartyで「20時01分」を「20時1分」と表示したい

Smartyのdate_formatで、日付をフォーマットしております。 1桁の場合、0をつけないで表示したいのですが、現在は 修正子 |date_format:"%Y年%m月%d日 %H時%M分"を利用しているのですが、 2005年02月02日 20時01分 と表示されてしまいます。 これを、 2005年2月2日 20時1分 と表示させるのは、どのようにしたらよろしいのでしょうか。

  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • SAY_MAN
  • ベストアンサー率41% (14/34)
回答No.1

こんにちわ。 date_formatで日付のフォーマットをする場合 date関数等と違い 「頭に0をつけない」というのはできません(多分)ので フォーマットした後に正規表現なので置換という形になるのではないかと思います。

taka333333333
質問者

お礼

ありがとうございました。 やはりムリなのですね。 勉強になりました。

関連するQ&A

  • Smarty

    Smartyを勉強しているものです。日付のプルダウン{html_select_date}で、選択した値をセッションに保持させて、再表示させたいのですが、{html_select_date}の中に、selectedに代わるものがありますか? 再表示後に変更できるように、プルダウン形式で表示を考えています。よろしくお願いします。

    • ベストアンサー
    • PHP
  • タイムスタンプで日付の取得

    どうしでも自分では解決しないので、ご存知の方いましたらお教え下さい。 金曜日の16時から67時間後、つまり翌月曜日の11時を表示させたい場合、 echo date("Y年m月d日 H時i分",1175266800); 2007年03月30日 16時00分 echo date("Y年m月d日 H時i分",1175266800 + 241200); 2007年04月02日 11時00分 となり何も問題ないのですが、同じく echo date("Y年m月d日 H時i分",1174665600 ); 2007年03月23日 16:00 echo date("Y年m月d日 H時i分",1174665600 + 241200); とした場合、 2007年03月26日11:00 となるべきなのに 2007年03月26日12:00 と1時間ずれてしまいます。 なぜ同じ67時間後(241200秒後)なのに1時間差が出てしまうのでしょうか? 宜しくお願いします。

    • ベストアンサー
    • PHP
  • Smartyのテンプレートにincludeしたファイルを表示したいので

    Smartyのテンプレートにincludeしたファイルを表示したいのですが、うまくいきません。 具体的には、意図しない数値が入ってしまいます。 どうすればよいのでしょうか? ■呼び出す側 require("../../libs/Smarty.class.php"); require_once('../../lib/set_include_path.php'); $header = include("header.php"); $smarty = new Smarty(); $smarty->assign("header",$header); $smarty->display("date.html"); ■テンプレート <body> {$header}<br>日付<br> ■表示例 include("header.php"); の内容が正常表示 1 日付 include("header.php"); の内容が正常表示された後、勝手に「1」と表示されるので、困ってます。表示されないようにするにはどうすればよいでしょうか。 var_dump($header);ってしたところ、int(1) ってなるので、この1が表示されているのかと思うのですが、なんで表示されるのか、表示されないようにするにはどうすればよいか、教えてください。

    • ベストアンサー
    • PHP
  • 翌日の日付表示で土日を抜きたい

    質問させていただきます。 次回の会合部屋の予約可能日付を表示させるスクリプトを考えています。まず1日後の日付表示を考えているのですが、1日後が土曜日或いは日曜日の際には翌週の月曜日が表示されるようにしたいです。 現状は下記のとおり1日後の日付を表示する事しかできません。 <? $youbi = array("日","月","火","水","木","金","土"); $d=mktime(0,0,0,date("m"),date("d")+1,date("y")); print date("Y年m月d日",$d)." (".$youbi[date("w",$d)].")"; ?> 土曜日と日曜日は表示から省かれるようにする方法を教えてください。

    • ベストアンサー
    • PHP
  • PHP掲示板で新着順に表示させたい【ソーティング】

    PHPで簡単な掲示板を作っているのですが、 新着順になるように、投稿したら一番上に来るようにしたいのですがそれができません。 $record .= date("Y年m月d日 H時i分s秒",time())."\n"; と投稿した日付を取得しています。 これを使って新着順にすることはできないでしょうか? 新着順にしてくれる簡単なやり方はないんでしょうか・・。調べましたがぜんぜんのってません(泣)

    • ベストアンサー
    • PHP
  • 日付型のデータに変換するには!?

    初めて、利用します!! テキストボックスに日付型のデータを入れたら、 指定した日付型のフォーマットに変換する関数を作ってます。 例えば、[20010101]と入力したら[2001/01/01]に変換! それで、入力桁数によって・・・年月日をそれぞれ算出しようとしてました。 例えば、2桁入力時は[1桁目]を「月」[2桁目]を「日」という具合に! そうしていくうち、5桁入力時に、年と月と日の判断をどうやったら良いのか わからなくなってしまいました。 今、考えられるケースとしては [YYYYM][YYMMD][YYMDD]なのですが 判断の方法を教えてください。_(_^_)_ ※Y:年 M:月 D:日

  • アクセスでタイトルバーに会社名や日付を表示するには?

    いつもお世話になってます。アクセスでタイトルバーに会社名や日付を表示させようとして、フォームの読み込み時のイベントに下記の処理を記述したところ、「コンパイルエラー:修正候補:ステートメントの最後」と出て、「"】"」のところが黄色でハイライトされます。どのように修正したらよいのでしょうか?よろしくお願いいたします。。。 Me.Caption="会社名【"&Me.Caption&"】"&_ Format(Date,"yyyy年m月d日(aaa)")

  • Excelで日付の表示

    日付を 平成17年 1月 2日 平成17年11月20日 平成17年 4月13日 こんな感じに日付の表示にするにはどうしたらいいのでしょうか?(画面では少しずれているかもしれませんが) 一ケタの月や日にちの時は、前にスペースを入れて、二桁の月や日にちの時と幅を合わせたいんです。 宜しくお願いいたします。

  • 日付の比較

    日付で条件分岐する処理があり、今悩んでいます。 <?= date_format("Y年m月d日", $test["日付"]) ?> ↑この方法で"2007年9月6日"と取得できているのですが、 この日付が 『2007年6月7日より後で2007年10月1日より前の場合は表示させる』 という条件分岐を考えた時に『~より後』とか『~より前』 をスクリプトでどう表現して言いかわかりません。 よろしくおねがいします。

    • ベストアンサー
    • PHP
  • string formatについて

    フォームの値(年、月、日)を取得し、 yyyy/mm/ddのようにformatしたいのですが、 以下の場合ですと、年2007 月07 日11 としていると、 例外が発生してしまいます。(java.util.FormatFlagsConversionMismatchException) 元々4桁,2桁あるものに関しては0埋めできないのでしょうか? ご教示願います。 (String.format("%04s/%02s/%02s", form.getStart_date_y(), form.getStart_date_m(), form.getStart_date_d()));

    • ベストアンサー
    • Java

専門家に質問してみよう