2011-03-02 79 views
1

所以我想實現的是將多個值分配給我想要的索引上的smarty數組。很難形容它,所以我就表露出來:在smarty中分配關聯數組

{assign var='paymentTypes' 
value=','|explode:"$paymentMethods[50],$paymentMethods[51], 
$paymentMethods[11],$paymentMethods[10],$paymentMethods[12], 
$paymentMethods[99],$paymentMethods[100]"} 

(格式化的可讀性)

所以現在我有一個paymentTypes陣列放置在從0開始鍵的值,我想要保留在付款方法數組中的密鑰 - 50,51,11 ..等

而且它必須完全在Smarty模板文件中完成。感謝您的任何想法。

回答

1

我找到了解決方法。所需的關聯數組用於HTML Select標籤。所以我只是用{html_options}的值和輸出屬性來代替選項。我爲值分配了一個數組,另一個數組僅用於輸出。

我有這樣的:

{html_options options=$paymentTypes} 

但我不想顯示所有從paymentTypes數組中的值的,但我不得不讓他們在數組中。所以我做的是這樣的:

{assign var='paymentTypesOutput' value=','|explode:"$paymentTypes[50], 
$paymentTypes[51],$paymentTypes[11],$paymentTypes[10],$paymentTypes[12], 
$paymentTypes[99],$paymentTypes[100]"} 

{assign var='paymentTypesValues' value=','|explode:"50,51,11,10,12,99,100"} 

{html_options values=$paymentTypesValues output=$paymentTypesOutput} 

這不是最優雅的解決方案 - 但它的工作原理。