SEARCH

このマニュアルはSmartyのものです。セキュリティなどの問題でRCMSでは利用できないものもありますので、ご注意ください。
{html_select_date}

{html_select_date}

{html_select_date} は、日付のドロップダウンリストを作成する カスタム関数 です。 年・月・日のいずれか又は全てを表示する事が出来ます。 以下の属性リストに無いパラメータが与えられた場合は、 作成された年、月、日の各 <select> タグの内側に 名前/値 のペアで表されます。

属性名必須デフォルト概要
prefixstringNoDate_name属性に付加する接頭辞
timetimestamp/ YYYY-MM-DDNoUNIXタイムスタンプ又はYYYY-MM-DDフォーマットによる現在の時間使用する日付/時間
start_yearstringNo現在の年ドロップダウンリストの始めの年 (年を表す数字又は現在の年からの相対年数(+/- N))
end_yearstringNostart_yearと同じドロップダウンリストの終わりの年 (年を表す数字又は現在の年からの相対年数(+/- N))
display_daysbooleanNoTRUE日を表示するかどうか
display_monthsbooleanNoTRUE月を表示するかどうか
display_yearsbooleanNoTRUE年を表示するかどうか
month_formatstringNo%B月の表示フォーマット(strftime)
day_formatstringNo%02d日の出力のフォーマット(sprintf)
day_value_formatstringNo%d日の値のフォーマット (sprintf)
year_as_textbooleanNoFALSE年をテキストとして表示するかどうか
reverse_yearsbooleanNoFALSE年を逆順で表示する
field_arraystringNonull name属性が与えられた場合、結果の値を name[Day],name[Month],name[Year]の形の連想配列にしてPHPに返す
day_sizestringNonull日のselectタグにsize属性を追加
month_sizestringNonull月のselectタグにsize属性を追加
year_sizestringNonull年のselectタグにsize属性を追加
all_extrastringNonull全てのselect/inputタグに拡張属性を追加
day_extrastringNonull日のselect/inputタグに拡張属性を追加
month_extrastringNonull月のselect/inputタグに拡張属性を追加
year_extrastringNonull年のselect/inputタグに拡張属性を追加
field_orderstringNoMDYフィールドを表示する順序
field_separatorstringNo\nフィールド間に表示する文字列
month_value_formatstringNo%mstrftime() フォーマットによる月の値(デフォルトは%m)
year_emptystringNonull 年のセレクトボックスの最初の要素に、指定した文字列をlabelとして、 空文字 "" のvalueを持たせます。 例えば、セレクトボックスに "年を選択して下さい" と表示させる時に便利です。 年を選択しないことを示唆するのに、time属性に対して "-MM-DD" という値が指定できることに注意してください。
month_emptystringNonull 月のセレクトボックスの最初の要素に、指定した文字列をlabelとして、 空文字 "" のvalueを持たせます。月を選択しないことを示唆するのに、 time属性に対して "YYYY--DD" という値が指定できることに注意してください。
day_emptystringNonull 日のセレクトボックスの最初の要素に、指定した文字列をlabelとして、 空文字 "" のvalueを持たせます。日を選択しないことを示唆するのに、 time属性に対して "YYYY-MM-" という値が指定できることに注意してください。

注意: 日付に関するヒント のページに、{html_select_date} の値をタイムスタンプに変換する便利な php 関数が紹介されています。

例 8-19. {html_select_date}

テンプレートのコード

{html_select_date}

出力

<select name="Date_Month">
<option value="1">January</option>
<option value="2">February</option>
<option value="3">March</option>
  ..... 省略 .....
<option value="10">October</option>
<option value="11">November</option>
<option value="12" selected="selected">December</option>
</select>
<select name="Date_Day">
<option value="1">01</option>
<option value="2">02</option>
<option value="3">03</option>
  ..... 省略 .....
<option value="11">11</option>
<option value="12">12</option>
<option value="13" selected="selected">13</option>
<option value="14">14</option>
<option value="15">15</option>
  ..... 省略 .....
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
<select name="Date_Year">
<option value="2006" selected="selected">2006</option>
</select>

例 8-20. {html_select_date} の二番目の例

{* 開始年および終了年は、現在の年からの相対値となります *}
{html_select_date prefix='StartDate' time=$time start_year='-5'
   end_year='+1' display_days=false}

現在が西暦 2000 だとすると、出力は次のようになります。

<select name="StartDateMonth">
<option value="1">January</option>
<option value="2">February</option>
.... 省略 ....
<option value="11">November</option>
<option value="12" selected="selected">December</option>
</select>
<select name="StartDateYear">
<option value="1995">1995</option>
.... 省略 ....
<option value="1999">1999</option>
<option value="2000" selected="selected">2000</option>
<option value="2001">2001</option>
</select>

{html_select_time}date_format$smarty.now および 日付に関するヒント も参照してください。

SEARCH