1
使用Smarty 3.0,我想這樣做,以避免重複代碼:的在模板中調用函數:使用assoc發送參數。數組,而不是參數/值對
{$assocArray = ['param1' => 'value1', 'param2' => 'value2', ...]}
{magicFunction name='someHelper' params=$assocArray}
代替
{$assocArray = ['param1' => 'value1', 'param2' => 'value2', ...]}
{someHelper param1=$assocArray['value1'] param2=$assocArray['value2'] ...}
我發現{call}
但不正是我正在尋找的東西。
我會盡力做我自己,但我願意接受建議(甚至是一段代碼,複製/粘貼:-P)
只是爲了信息,我已經結束了的東西,如'回報call_user_func_array($ PARAMS [ '名'],數組($ PARAMS ['args'],$ smarty));'。感謝您的傑出答案。 – 2011-12-19 15:33:04
@FrostyZ當$ params ['args] = array(1,2)'和'$ smart = 3;'時,相當於'func(array(1,2),3)',那真的是你正在找? – 2011-12-19 15:45:45
@FrostyZ查看我的帖子的編輯。 – 2011-12-19 15:47:37