2012-02-17 16 views
3

キーにハイフン付きのSmarty変数を表示しようとしています。キーにハイフンがあるという事実を変えるために私ができることはありません。Smarty変数 - ハイフン(配列キー)

phone-1-1 => Array (9) 
    name => "phone-1-1" 
    value => "(555) 555-5555" 
    type => "text" 
    frozen => false 
    required => false 
    error => null 
    id => "phone-1-1" 
    label => "<label for="phone-1-1">Phone Number (..." 
    html => "<input maxlength="32" size="20" name=..." 

が使用Smartyの変数を印刷しようと:

{$form.phone-1-1.label} 

があるため、ハイフンの失敗

は、例えば、電話番号は、AS $フォームアレイ内に格納されてもよいです。

どのように私は周りに得るのですか?

答えて

3

に使用できる唯一の回避策は次のとおりです。

{assign var="mykey" value="phone-1-1"} 
{$form.$mykey.label} 

BultのインSmartyの機能{assign}は、テンプレート内で直接変数を作成してみましょう。

http://www.smarty.net/docs/en/language.function.assign.tpl(Smartyの2)
http://www.smarty.net/docsv2/en/language.custom.functions.tpl(Smartyの3)

+0

恐ろしいです。ありがとう。 – bpmccain

+3

'{$ form [" phone-1-1 "]。label}'もやっかいで、 '{assign}}するのが少し面倒です。 – fleeting

関連する問題