append()
append() -- 在已赋值的数组中增加一个元素
描述
void
append ( mixed var)
void
append ( string varname, mixed var [, bool merge])
如果你添加到一个字符串值,它将转换为一个数组值然后再添加。你可以显式的传递名/值对,或者包含名/值对的关联数组。如果第三个可选参数为TRUE,那么值将与当前数组合并而不是添加。
技术注解:merge参数会参考数组键,所以如果你合并两个以数字为索引的数组,它们可能互相覆盖,或者得到非线性的键。这个和PHP函数array_merge()不一样,后者会删除数字索引并重新编排之。
例子13-1. append
<?php
// 等同于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')); ?>
|
|
参见append_by_ref(),assign()以及get_template_vars()。