Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty



append() — 把值追加到数组。


void append(mixed var);
void append(string varname,
            mixed var,
            bool merge);


Technical Note

The merge parameter respects array keys, so if you merge two numerically indexed arrays, they may overwrite each other or result in non-sequential keys. This is unlike the PHP array_merge() function which wipes out numerical keys and renumbers them.

Example 14.4. append()

// 直接使用和assign()差不多
$smarty->append('foo', 'Fred');
// 这里,foo已经变成了模板中的一个数组。
$smarty->append('foo', 'Albert');

$array = array(1 => 'one', 2 => 'two');
$smarty->append('X', $array);
$array2 = array(3 => 'three', 4 => 'four');
// 下面会增加第二个X数组的元素
$smarty->append('X', $array2);

// 传递联合数组
$smarty->append(array('city' => 'Lincoln', 'state' => 'Nebraska'));


参见 appendByRef(), assign()getTemplateVars()