assign()
描述
void
assign ( mixed var)
void
assign ( string varname, mixed var)
你可以显式的传递名/值对,或者传递包含名/值对的关联数组。
例子13-1. assign()
<?php
// 传递名/值对
$smarty->assign('Name', 'Fred'); $smarty->assign('Address', $address);
// 传递一个关联数组
$smarty->assign(array('city' => 'Lincoln', 'state' => 'Nebraska'));
// 传递数组
$myArray = array('no' => 10, 'label' => 'Peanuts'); $smarty->assign('foo',$myArray);
// 传递数据库中的一行数据
$sql = 'select id, name, email from contacts where contact ='.$id; $smarty->assign('contact', $db->getRow($sql)); ?>
|
在模板中可以这样来访问:
{* 注意变量是大小写敏感的 *}
{$Name}
{$Address}
{$city}
{$state}
{$foo.no}, {$foo.label}
{$contact.id}, {$contact.name},{$contact.email} |
|
要访问更复杂的数组赋值,可以参见{foreach}和{section}。
参见assign_by_ref(),get_template_vars(),clear_assign(),append()以及{assign}。