Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Bab 4. Variables

Smarty has several different types of variables. The type of the variable depends on what symbol it is prefixed or enclosed within.

Variables in Smarty can be either displayed directly or used as arguments for functions, attributes and modifiers, inside conditional expressions, etc. To print a variable, simply enclose it in the delimiters so that it is the only thing contained between them.

Teladan 4-1. Example variables

{$Name}

{$product.part_no} <b>{$product.description}</b>

{$Contacts[row].Phone}

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

Top Tip: An easy way to examine Smarty variables is with the debugging console.

Variabel ditempatkan dari PHP

Variabel assigned dari PHP direferensi oleh pendahulunya dengan tanda dolar $ (seperti php). Variabel yang ditempati dari dalam template dengan fungsi {assign} juga ditampilkan dengan cara ini.

Teladan 4-2. Variabel yang ditempati

naskah php

assign(\'firstname\', \'Doug\'); $smarty->assign(\'lastname\', \'Evans\'); $smarty->assign(\'meetingPlace\', \'New York\'); $smarty->display(\'index.tpl\'); ?>'); ?>

di mana konten index.tpl adalah:

Hello {$firstname} {$lastname}, glad to see you can make it.
<br />
{* ini tidak akan bekerja karena $variables adalah sensitif huruf *}
This weeks meeting is in {$meetingplace}.
{* ini akan bekerja *}
This weeks meeting is in {$meetingPlace}.

Output di atas:

Hello Doug Evans, glad to see you can make it.
<br />
This weeks meeting is in .
This weeks meeting is in New York.

Array asosiatif

Anda juga bisa mereferensi variabel array asosiatif yang ditempatkan dari PHP dengan menetapkan kunci setelah simbol '.' (titik).

Teladan 4-3. Mengakses variabel array asosiatif

assign(\'Contacts\', array(\'fax\' => \'555-222-9876\', \'email\' => \'zaphod@slartibartfast.example.com\', \'phone\' => array(\'home\' => \'555-444-3333\', \'cell\' => \'555-111-1234\') ) ); $smarty->display(\'index.tpl\'); ?>'); ?>

di mana konten index.tpl adalah:

{$Contacts.fax}<br />
{$Contacts.email}<br />
{* anda dapat menampilkan array dari array juga *}
{$Contacts.phone.home}<br />
{$Contacts.phone.cell}<br />

ini akan menampilkan:

555-222-9876<br />
zaphod@slartibartfast.example.com<br />
555-444-3333<br />
555-111-1234<br />

Indeks array

Anda bisa mereferensi array dengan indeksnya, lebih mirip dengan sintaks PHP.

Teladan 4-4. Mengakses array dengan indeks

assign(\'Contacts\', array( \'555-222-9876\', \'zaphod@slartibartfast.example.com\', array(\'555-444-3333\', \'555-111-1234\') )); $smarty->display(\'index.tpl\'); ?>'); ?>

di mana index.tpl adalah:

{$Contacts[0]}<br />
{$Contacts[1]}<br />
{* anda dapat menampilkan arrays dari arrays juga *}
{$Contacts[2][0]}<br />
{$Contacts[2][1]}<br />

Ini akan menampilkan:

555-222-9876<br />
zaphod@slartibartfast.example.com<br />
555-444-3333<br />
555-111-1234<br />

Obyek

Properti obyek yang ditempatkan dari PHP dapat direferensi dengan menetapkan nama properti setelah simbol ->.

Teladan 4-5. Mengakses properti obyek

name:  {$person->name}<br />
email: {$person->email}<br />

ini akan menampilkan:

name:  Zaphod Beeblebrox<br />
email: zaphod@slartibartfast.example.com<br />
Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors