{php}

The {php} tags allow PHP code to be embedded directly into the template. They will not be escaped, regardless of the $php_handling setting. This is for advanced users only, not normally needed and not recommended.

Technical Note: To access PHP variables in {php} blocks you will need to use the PHP global keyword.

Example 7-28. php code within {php} tags

{php}
   // including a php script directly from the template.
   include('/path/to/display_weather.php');
{/php}

Example 7-29. {php} tags with global and assigning a variable

{* this template includes a {php} block that assign's the variable $varX *}
{php}
   global $foo, $bar;
   if($foo == $bar){
     echo 'This will be sent to browser';
   }
  // assign a variable to Smarty
  $this->assign('varX','Toffee');
{/php}
{* output the variable *}
<strong>{$varX}</strong> is my fav ice cream :-)

See also $php_handling, {include_php}, {include}, {insert} and componentized templates.