Felhasználói eszközök

Eszközök a webhelyen


oktatas:programozas:php:php_template:smarty

< PHP template

Smarty template

Helló Világ

A Smarty egy PHP nyelven írta template rendszer, osztályként megvalósítva.

Töltsük le a legújabb stabil verziót:

Csomagoljuk ki. Nekünk a „lib” könyvtárral lesz szükségünk. Másoljuk a munkakönyvárunkba. Hozzunk létre a munkakönyvtárunkba két újabb könyvtárat:

  • templates - itt lesznek a templatek
  • templates_c - ide dolgozik a Smarty

Utóbbi könyvtárra írási jog szükséges.

Hozzuk létre a tempalte-ünket:

templates/list.tpl
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Dolgozók</title>
 
</head>
<body>
 
Név: {$nev}<br>
Település: {$telepules}<br>
Fizetés: {$fizetes}
 
</body>
</html>

Ezek után a list.php fájl így néz ki:

list.php
<?php
 
require_once("libs/Smarty.class.php");
 
$smarty = new Smarty();
 
$smarty->template_dir = "./templates"; //sablonok helye
$smarty->compile_dir = "templates_c"; //ide dolgozik
 
$smarty->assign("nev", "Nagy József");
$smarty->assign("telepules", "Szolnok");
$smarty->assign("fizetes", "870000");
 
$smarty->display("list.tpl");
 
?>

Iteráció és szelekció

list.tpl
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Dolgozók</title>
 
</head>
<body>
 
 {foreach from=$dolgozok item=elem name=egy}
	{if $smarty.foreach.egy.index == 0}
		Név: 
	{/if}
	{if $smarty.foreach.egy.index == 1}
		Település: 
	{/if}
	{if $smarty.foreach.egy.index == 2}
		Fizetés: 
	{/if}
	{$elem}<br> 
 {/foreach}
 
</body>
</html>
list.php
<?php
 
require_once("libs/Smarty.class.php");
 
$smarty = new Smarty();
 
$smarty->template_dir = "./templates"; //sablonok helye
$smarty->compile_dir = "templates_c"; //ide dolgozik
 
$smarty->assign("dolgozok", array(
"nev" => "Nagy József",
"telepules" => "Szolnok",
"fizetes" => "870000"
));
 
$smarty->display("list.tpl");
 
?>

Dokumentáció

oktatas/programozas/php/php_template/smarty.txt · Utolsó módosítás: 2019/08/22 10:38 szerkesztette: admin