Sadece smarty değil, herhangi bir tema motoru da yukarıdaki gibi değişken tanımlama yeteneğine sahip olmalı zaten. Ayrıca
@interkolik; çok enteresan bir bakış açısı, çünkü template engine, yük yerine tam tersine kolaylık sağlar.
yanılıyorsun hocam bir tema motoru fazladan yüke neden olur.
kolaylığı yüküne değiyorsa kullanılır.
ben smarty kullanmam
rain.tpl kullanırım.
çünkü smarty gerekli gereksiz her türlü php fonksiyonuna destek sağlamak için kendini çok şişirmiş hantal bir tema motoru.
Kullanışlı bir tema motorunda neye ihtiyacın olur? if else loop constant variable.
Sen scriptinden variable ve constantları verirsin, o gösterime sokar. Oysa smarty string değiştirmeden, string kısaltmaya, string escapeden, vay efendim lowercase yapmaya tonla fonksiyonu temanın içine sokuyor. Bu yüzden aslında önyüz ile kodu ayırması gerekirken tam tersine kodlamayı neredeyse php kadar temanın içine sokan bir framework halini alıyor. hatta {php}{/php} kodlarını da işin içine sokup bütün scripti tpl içinde yazmak bile mümkün )))
Smarty kullanmak mvc'siz salt php li gösterimden 10 kata kadar fazla işlem zamanı, bellek ve işlemci kullanımına neden olabilir.
sen sadece hello world diyecek olsan da smarty tüm class ve fonksiyonları ile yüklenecek sistemin sayfa üretmesi için. bir tek hello world demek için tonla konfigurasyon ayarı için default değişken yaratılacak işleme girecek vs...
http://www.raintpl.com/PHP-Template-Engines-Speed-Test/