Yazarlar Sözlük Makaleler Yardım Masası Gözlük Forum İstatistik

Tüm Başlıklar XML

1.  PHP ile kullanılabilen şablon motoru.*

Bununla; kullanıcı arayüzü* ile iş mantığı* birbirinden ayrılmış PHP uygulamaları geliştirilebilir. Böylece uygulama geliştirici ile tasarımcı daha koordine bir şekilde çalışma fırsatı bulur. Aksi takdirde biri diğerinin çalışmasını bozar, öbürü şikayet eder, patron da bunlara kızar.

Örneklemek gerekirse, bir haber sayfası hazırladığımızı düşünelim. Haberin başlığı, özeti, resmi ve içeriği gibi alanlar olacaktır. Bir şablon dosyası ile tasarım belirlenir ve bu alanların sayfanın neresinde olacağı Smarty tagları ile belirtilir. PHP programcısı ise kendi kodunda sadace bu alanları veritabanından okumaktan sorumludur. Böylece tasarımcı şablonu (user interface) dilediği gibi değiştirirken, PHP programcısı da iş mantığıyla ilgili kodları dilediği gibi değiştirebilir. Arayüz ve iş mantığı içiçe olmadığı için biri diğerinden etkilenmez.

Bu kadar çok parse işlemi siteyi yavaşlatmaz mı diye düşünebiliriz. Yavaşlatmaz. Aksine Smarty çok hızlıdır. Çünkü şablonlarınız derlenerek PHP koduna dönüştürülür. (aspx sayfalarının dll'e dönüştürülmesi gibi)

Smarty ile Hello World! :
İki dosya yapıyoruz. Biri tpl uzantılı şablon (template) dosyası. Diğeri ise PHP dosyamız.

hello.tpl :
{* Smarty *}
Hello {$name}!

hello.php :
<?
// Smarty library'sini yükleyelim
require_once('... Smarty.class.php');

$smarty = new Smarty();

$smarty->template_dir = '/web/www.example.com/smarty/guestbook/templates/';
$smarty->compile_dir = '/web/www.example.com/smarty/guestbook/templates_c/';
$smarty->config_dir = '/web/www.example.com/smarty/guestbook/configs/';
$smarty->cache_dir = '/web/www.example.com/smarty/guestbook/cache/';

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

$smarty->display('hello.tpl');
?>

Ayrıntılı bilgi için Smarty'nin resmi sitesi :
http://smarty.php.net
fizikci
07 Ağustos 2006 00:11
Bu konuda bildiklerinizi bizlerle paylaşabilirsiniz
Tabi bunun için yazarsanız giriş yapmalı, yazar değilseniz yazar olmalısınız.


Bu başlığa bkz veren girişlerin başlıkları nedir?

Bu başlığa bkz veren girişler başka hangi başlıklara bkz verdiler?
» Java » Pear » AJAX » Pascal » C » Javascript » Namespace » Prototype » PHP » C# » framework » UI » C++ » class » STL

© 2005, Bilişim Kulübü. (1125 ms)
Ne yapabilirsin: SubtitleClick ile İngilizceni Geliştir, Çınar Framework ile kod yaz, Eglencelik.org'ta biraz eğlen