Home Tutorial Php Smarty Variables in Smarty

 
 

Share on Google+Share on Google+
Variables in Smarty
Posted on: October 8, 2009 at 12:00 AM
Advertisement
Variables in Smarty - Types, Examples etc.

Variables in Smarty Templates Engine for PHP

Smarty Template variables are much like PHP variable, they can contain numbers, letters, and underscores with a preceding dollar ($) sign.

We can reference 

  • Smarty Arrays that are indexed either numerically or non-numerically. 

  • Object properties and methods,

  • Config file variables

Smarty Variables can be declared as:

{$new}, {$1212},{$_}

Except this naming convention other special symbols are not valid.

Example of Smarty Variable Types:

Var.php

<?php

require './libs/Smarty.class.php';

$smarty=new Smarty;

$smarty->caching =true;

$smarty->assign('name','roseindia' );

$smarty->assign('address' , ' new delhi');

$smarty->display('Var.tpl');

?>

Var.tpl

<html>

<head><title> Simple variable</title></head>

<body bgcolor="#ffffff">

<font size=2>

<table cellspacing=30 style="font-weight:bold;font-size:50">

<tr><td >Name:</td><td>{$name}</td></tr>

<tr><td>Address:</td><td>{$address}</td></tr>

</table>

</font>

</body>

</html>

Smarty Arrays:

You can use smarty associative array variables as well as indexed arrays same as PHP.

Array.php

<?php

require './libs/Smarty.class.php';

$smarty=new Smarty;

$smarty->caching =true;

$smarty->assign('array1',array(1,2,3,4,5,67,8,99) );

$smarty->assign('array2',array('name'=>'Roseindia','city'=>'new delhi'));

$smarty->display('Array.tpl');

?>

Array.tpl

<html>

<head>

<title> Array </title>

</head>

<body bgcolor="#ffffff" >

<table cellspacing=30 style="font-weight:bold;font-size:50">

<tr><td>First Example:</td><td>$array1[2]</td><td>{$array1[2]}<!--Display third element of the array--></td></tr>

<tr><td>Second Example:</td><td>$array2.name</td><td>{$array2.name}<!-- Using associative array--></td></tr>

</table>

</body>

</html>

 

Config file variables:

To use config file variables we need three files: .php file, .tpl file, & .conf file which stores in (C:\wamp\www\smarty\configs) 

confi.php file

<?php

require './libs/Smarty.class.php';

$smarty=new Smarty;

$smarty->caching=true;

$smarty->display('confi.tpl');

?>

confi .tpl file

(  We can access the conf variable from .conf file by putting the variable inbetween the '#' sign {##}: )

{config_load file='new.conf'}

<html>

<head>

<title>{#pagetitle#}</title>

</head>

<body bgcolor="{#bgcol#}">

<table cellspacing="{#cspace#}" style="{#tstyle#}" border="{#tbrdrsize#}" bgcolor="{#tbgcolor#}">

<tr><td>Hello</td></tr>

</table>

</body>

</html>

The second way to access the conf variable is $smarty.config method:

{config_load file='new.conf'}

<html>

<head>

<title>{$smarty.config.pagetitle}</title>

</head>

<body bgcolor="{$smarty.config.bgcol}">

<table cellspacing="{$smarty.config.cspace}" style="{$smarty.config.tstyle}" border="{$smarty.config.tbrdrsize}" bgcolor="{$smarty.config.tbgcolor}">

<tr><td>Hello</td></tr>

</table>

</body>

</html>

new .conf

{* This is a configuration file*}

{* In this file we assign different values to different variables *}

{* which will be used in in .php file *}

pagetitle="Configuration variable example"

bgcol="#ffffff"

tbrdrsize=3

tbgcolor="#a00fff"

tstyle="font-weight:bold;font-size:50"

cspace=30

In the above new.conf file we need to assign our desired value to particular variables, which will be used in the .tpl file.

Generally above mentioned variables are attributes of HTML

Advertisement

Related Tags for Variables in Smarty:


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: October 8, 2009

Recommend the tutorial

Advertisements Advertisements
 

 

 

DMCA.com