Smarty Manual
Prev |  | Next

# assign()

assign() -- assign values to the templates

## Description

void assign ( mixed var)
void assign ( string varname, mixed var)

You can explicitly pass name/value pairs, or associative arrays containing the name/value pairs.

Example 13-1. assign()
`<?php // passing name/value pairs $smarty->assign('Name', 'Fred'); $smarty->assign('Address', $address); // passing an associative array $smarty->assign(array('city' => 'Lincoln', 'state' => 'Nebraska')); // passing an array $myArray = array('no' => 10, 'label' => 'Peanuts'); $smarty->assign('foo',$myArray); // passing a row from a database (eg adodb) $sql = 'select id, name, email from contacts where contact ='.$id; $smarty->assign('contact', $db->getRow($sql)); ?>`
These are accessed in the template with
    {* note the vars are case sensitive like php *}
    {$Name}
    {$Address}
    {$city}
    {$state}

    {$foo.no}, {$foo.label}
    {$contact.id}, {$contact.name},{$contact.email}

To access more complex array assignments see `{foreach}` and `{section}`

See also `assign_by_ref()`, `get_template_vars()`, `clear_assign()`, `append()` and `{assign}`

Prev | Home | Next
append_by_ref() | Up | assign_by_ref()