Smarty

Software screenshot:
Smarty
Software ətraflı:
Version: 3.1.5
Tarixi Upload: 11 May 15
Lisenziya: Pulsuz
Məşhurluq: 9

Rating: nan/5 (Total Votes: 0)

Smarty daha dəqiq bir kimi təsvir olunacaq, həqiqətən bir "Şablon Engine" deyil "Şablon / Təqdimat Çərçivə". Bu adətən bir proqram təqdim qat ilə məşğul vəzifələri avtomatlaşdırılması üçün alətlər bir sərvət ilə proqramçı və şablon dizayner təmin edir. Smarty sadə tag-əvəz şablon mühərriki deyil, çünki mən söz Çərçivə qeyd. Belə bir sadə məqsədi üçün istifadə edilə bilər, baxmayaraq ki, yüksək-performance, ölçeklenebilirlik, təhlükəsizlik və gələcək artım davam etdirərkən, onun diqqət, tez və ağrısız inkişafı və tətbiqi yerləşdirilməsi edir.
Belə ki, sizin üçün Smarty doğru deyil? Nə üçün aşağı gəlir iş üçün doğru alət istifadə edir. Siz sadə dəyişən əvəz istəyirsinizsə, siz sadə bir şey baxmaq və ya hətta öz gəzmək edə bilərsiniz. Siz ərizə gələcəkdə inkişaf kimi bir çox alətləri ilə möhkəm layoutuna çərçivə sizə yardım etmək üçün istəyirsinizsə, Smarty güman ki, yaxşı bir seçimdir.
istifadə Niyə?
Smartys əsas dizayn məqsədlərindən biri təqdim proqram kodu ayrılması asanlaşdırmaq üçün. Adətən, proqram kodu yazılı və PHP kodu saxlanılır tətbiqi, biznes məntiq var. Bu kod proqramçılar tərəfindən təmin edilir. təqdimat content yazılı və şablon faylları saxlanılır son istifadəçi təqdim olunur yoludur. şablonları şablon dizaynerlər tərəfindən saxlanılır.
Onun ən əsas funksiyası, proqram kodu şablon mühərriki onu verir və onu gösterir content toplayır. content qəzet məqalənin başlığı, Slogan, müəllif və bədən kimi bir şey ola bilər. Bu proqram code Bu məzmun şablonu təqdim olunacaq necə heç bir narahatlıq var. şablon dizayner təqdimat üçün məsuliyyət daşıyır. Onlar biçimlendirme əlavə və başa gətirilməsi, şablon faylları redaktə. Bu adətən HTML tags, kaskad stillər və şablon mühərriki ilə təmin digər alətlər kimi şeylər daxildir.
Bu paradiqma bir neçə məqsəd xidmət edir:
) Designers proqram kodu qıra bilməz. Onlar bütün istədikləri şablonları ilə mess, lakin code salamat qalır bilər. indeksi, sıx daha təhlükəsiz və saxlamaq üçün asan olacaq.
) Şablonları Səhvlər dizayner üçün mümkün kimi kimi sadə və intuitiv edilməsi, Smartys səhv rəftar routines məhdudlaşmır olunur.
Bütün proqramçı olan müdaxiləsi olmadan) öz qatında təqdimatı ilə, dizaynerlər dəyişdirmək və ya tamamilə sıfırdan yenidən.
) Programmers şablonları ilə messing deyil. Onlar proqram kodu saxlanılması əldə yolu məzmunu dəyişir, təqdimat qat narahat olmadan və s. Yeni iş qaydaları edilməsi haqqında getmək bilər.
) Şablonlar bir intuitiv yanaşma final çıxış olacaq nə bir yaxın nümayəndəliyi var. Designers content şablon var necə qayğı yoxdur. Əgər belə bir SQL bəyanat kimi şablon kənar data varsa, bu dizayner tərəfindən təsadüfi silinməsi və ya dəyişdirilməsi ilə proqram kodu qırılma riskini açır.
) Siz ixtiyari PHP kodu icrası üçün server açılması deyil. Smarty qəsdən və ya təsadüfi olub, təhlükəsizlik pozulması deyil, belə ki dizaynerlər inşa çox təhlükəsizlik xüsusiyyətləri vardır. Onlar yalnız onlar şablonları məhdudlaşmır nə edə bilərsiniz.
Proqram kodu təqdimat ayrılmış olsa da, bu mütləq məntiq ayrılmış demək deyil. proqram code açıq-aydın məntiq var, lakin şablonları yalnız təqdimat üçün şərti əsasında məntiq ola bilər. Məsələn, dizayner masa satır rəng və ya üst-hal, onlar bir təyin content alternativ istəyir. Bu təqdimat məntiq, proqramçı ilə bağlı lazım deyil ki, bir şey. Necə tez-tez bir təqdimat bir sütunda göstərilir ki, və proqram kodu bu yerləşdirilməsi üçün düzəliş lazımdır, belə ki, sonra, iki və ya üç sütun onu istəyirdi? Daha yaxşı yanaşma bir sıra məzmun təyin və şablon təqdimat idarə qoy edir. Bu proqram asanlaşdırmaq və çevik şablonları davam edəcək. Smarty vəziyyətin bu cür idarə etmək üçün alətlər verir.
Bu Smarty şablon tətbiq məntiq qoyulması qarşısını alır ki, demək deyil, siz özünü nizam-intizam bir az var. Burada (ki, bütün mümkün əgər bunu qarşısını almaq doğru) şablon biznes məntiq daxilolma nümunəsidir:
{Əgər $ smarty.session.user və ($ user_type eq "redaktor" və ya $ user_type eq "admin")}
redaktə
{/ Əgər}
istifadəçi daxil və onlar bir redaktor və ya administrator və ya əgər məntiq yoxlayır, sonra onlar bu edit onay göstərir redaktə etmək üçün icazə verilir. Bu proqram kodu aid məntiq var. şablon nə etimadnaməsini haqqında qayğı deyil bu istifadəçi yalnız redaktə qutusu göstərilir və ya əgər bilmək lazımdır, var! Belə ki, daha uyğun yanaşma baxaq:
{Əgər $ edit_flag}
redaktə
{/ Əgər}
Bu sadə və asan-anlamaq şablon dəyişən bir $ edit_flag təyin proqram proqramçı qədər. Bu yolla şablon artıq əsas data strukturu istinad edilir. Sessiya data strukturu format heç dəyişikliklər varsa, heç bir şey şablon düzəlişlər etmək lazımdır.
İndi Smarty ilə edə bilərsiniz bir neçə şey baxmaq imkanı verir. Bunu edə bilər bir şey xüsusi funksiyaları edir. Bu müəyyən bir vəzifəsi icra şablon tags var. Misal:
{Html_image file = "masthead.gif"}
Burada "html_image" adlı funksiyası var. Bu funksiyası "file" atributu verilən şəkil alır və aşağıdakı HTML kodu ilə gəlmək üçün lazım olan bütün çalışır:

image funksiyası hündürlüyü və eni həyata figuring və default sərhəd bayrağı təmin chore idi. Əlbəttə yalnız əvəzinə şablon statik HTML tag istifadə edə bilər, lakin bu, xüsusi bir funksiyası bir çox ümumi vəzifəsi asanlaşdırmaq üçün istifadə edilə bilər necə nümayiş etdirir. dizayner texniki heyəti dizayn və daha az diqqət bilər. Dizayner müxtəlif ölçülü başlıq image açılan qərar əgər Bundan əlavə, şablon düzəliş lazım deyil.
html_image Smarty ilə gəlir ki, bir funksiyası var. Siz həmçinin öz xüsusi funksiyaları edə bilərsiniz. Burada kimi baxmaq bilər nə bir nümunə var:
{Html_link type = "məqalə" id = "abc123" text = "Fire Hotel həyata edir"}
Bu, "html_link" adlı xüsusi bir funksiyası istifadə edir. Bu, aşağıdakı HTML kodu ilə gəlir:
Yanğın Hotel həyata edir
Bu nə ilə məşğuldur? Bir üçün, dizayner bir məqalə üçün bir URL format ilə narahat ehtiyac yoxdur. Ağır kodlu URL ilə, nə proqramçı şeyi təmizləmək üçün qərar bir gün olur, və / və abc123 / ART /display_article.php?id=abc123 URL sintaksis dəyişir? Biz maddə URL hər şablon redaktə etmək olardı. Bu şablon funksiyası saxlamaq üçün şablonlar asan edə bilər necə yalnız bir nümunəsidir.
İndi proqramçılar və şablonları bir az. Əvvəllər proqramçı şablonları məzmunu ilə nə üçün heç bir qayğı var ki, qeyd edilmişdir. Konseptual səviyyədə bu, həqiqətdir, lakin real dünyada siz nazik hava bütün şablonları tikintisi üçün şablon dizayner gözləmək niyyətində deyil. Bütün sonra, iş məntiq content şablonları verilir nə müəyyən edir. Belə ki, proqramçı dizayner adətən quraşdırma skelet şablonları ilə başlamaq olacaq. Onlar böyük bir mess məzmunu ilə başlamaq deyil, belə ki, bu adətən belə content dəyişənlərin və bölmə loops, və bəlkə bir neçə sadə biçimlendirme tags kimi xam elementləri ehtiva edir. Burada məqalələr siyahısını loops və bir masa onlara göstərir ki, skelet şablon bir nümunəsidir:


{Bölmə name = art loop = $ məqalə}


{/ Bölmə}
{$ məqalə [art] .headline}
{$ məqalə [art] .Tarixi}
{$ məqalə [art] .Author}

çıxış bu kimi bir şey ola bilər:







qərb qazandı necə
Dec 2, 1999
John Wayne
Team itirir, Coach fit
Feb 2, 2002
John Smith
Gourmet Cooking
Jan 23, 1954
Betty Crocker

İndi bəzi ümumi suallar üçün:
Bütün Niyə istifadə şablonları? Nə Yerinə {$ adı} of?
Oxumaq üçün asan şeyi bir dizayn məqsəd deyil, lakin yan təsiri daha çox. Şablonları istifadə edərək yuxarıda izah edilmiş olan bir çox böyük fayda var. ? Biz zaten bir şablon mühit olduğundan, {$ title} xüsusilə sadə syntax oxumaq və saxlamaq üçün şablonları asan etmək üçün kömək edir ki,.
Şablon applications çox yavaş edilməsi, analiz üçün zaman ayırın.
Bəzi hallarda doğru ola bilər, lakin Smarty ilə bir PHP script həyata daha yavaş. Bir şablon ilk icrası, Smarty sonra PHP script yalnız daxil edilir PHP scripts (şablon tərtib çağırıb.) Daxil şablon faylları çevirir. PHP sürətləndirici və siz Cütlük bu həqiqətən minimal hava ilə sürətli layoutuna mühit var.
Smarty sürətli ola bilər necə çox mürəkkəbdir?
Smarty əsas o nəyə qadir olduğunu nəzərə alaraq olduqca arıq edir. Onun funksionallığı ən plugins var. yalnız tələb plugins tələb dolu ki, plugin memarlıq nəzərdə tutulmuşdur. Bu çərçivədə, yeni plugins əlavə hətta yüzlərlə performansını təsir etməyəcək. Bu Smarty, sürətli ölçeklenebilir və çevik edir.
Smarty də dinamik yenileyin və sizin təvəccöh da uncached səhifənin hissəsini saxlaya bilərsiniz caching xüsusiyyətləri vardır. Caching hər sehr onları icra etmək lazım qənaət tərtib şablonlar çıxış saklar.
Sürətləndiriciləri haqqında Bütün bu söhbət nə Smarty bir olmadan run edir?
Əslində bu bir olmadan olduqca yaxşı çalışır. Smarty bir sürətləndirici tələb etmir, lakin şablon, özləri bir istifadə edəcək Smarty (AFAIK) üçün unikal bir şey faylları. Bir sürətləndirici yoxsa, şablon icra kimi sürətli deyil, lakin onlar ayrıştırılan deyil, çünki hər hansı bir vasitə ilə yavaş deyil! Siz həmçinin bütün digər faydaları və Smarty xüsusiyyətləri saxlamaq. Sürətləndiriciləri sərbəst mövcud çünki Həmçinin, bir istifadə edilə bilməz bir bəhanə həqiqətən yoxdur. Onlar Smarty və ya istifadə edərək, bütün PHP apps ilə performans kömək edəcəyik.
Bu daha asan ola bilər?
Bəzi şeylər izah, lakin yalnız təcrübəli bilməz. Təqdimat proqram məntiq ayrılması fayda kifayət qədər qeyd edilə bilməz. Smarty də bəzi gözəl səhv rəftar xüsusiyyətləri və bir baxışda siz şablon heirarchy görə bilərsiniz ayıklama konsol daxili və təyin dəyişənlər var. Smarty xüsusi funksiyalar əlavə plugin kataloq onları düşmə və şablon onları qeyd kimi asandır.
şablon tags XML-based Mənim redaktor kimi deyil deyil.
{} Sınırlayıcıları onlar HTML tags arasında seçmək üçün asan, yalnız bir default var. Əgər siz onları istədiyiniz deyilsə, sizin sınırlayıcıları dəyişdirmək və ya bəlkə bir şey daha XMLish da istifadəçi Dreamweaver üçün fəaliyyətləri və kimi çox var kimi, onlara Fəaliyyətlər sahəsində bir görünüş verir.
Bu inşallah web proqram bina üçün alətlər sizin Arsenal əlavə edə bilərsiniz, özetle Smarty var. Həqiqətən daha ətraflı məlumat üçün, alt əl üst oxumaq forumlarda iştirak və insanlar müzakirə nə oldu

Features .

  • Caching: Smarty göstərilən web page və ya bütün hissələri caching, və ya uncached hissələri tərk xırdadənəli caching xüsusiyyətləri təmin edir. Programmers s cacheable və ya qeyri-cachable, asan idarə edilməsi üçün məntiqi ədəd qrup cached pages kimi şablon funksiyaları qeydiyyatdan bilər.
  • Konfiqurasiya Files: Smarty konfiqurasiya faylları çıxardı dəyişənlərin təyin edə bilərsiniz. Şablon dizaynerlər proqramçı olan müdaxilə olmadan bir yerdə bir neçə şablon ümumi dəyərlər təmin edə bilər, və config dəyişənlərin asanlıqla proqram proqramlaşdırma və təqdimat hissələri arasında ortaq ola bilər.
  • Security: Şablonlar PHP kod yoxdur. Buna görə də, bir şablon dizayner PHP tam gücü ilə başladı, lakin funksionallığı yalnız alt proqramçı onlara mövcud deyil ki, (proqram kodu.)
  • Easy istifadə edin və saxlamaq üçün: Web səhifə dizaynerlər PHP kodu sintaksis ilə məşğul, lakin düz HTML daha əvəzinə bir asan-istifadə şablonu syntax çox fərqli deyil. şablon dramatik dizayn dövrü qısaldılması, finala çıxdı çox yaxın nümayəndəliyi var.
  • Dəyişən Modifiers: təyin dəyişənlərin məzmunu asanlıqla bütün yuxarı halda gösteren kimi modifikatorların ilə ekran vaxt düzəliş edilə bilər, html-qaçan Yenə s tarixləri format, mətn blokları truncating, simvol arasında boşluq əlavə Bu proqramçı heç bir müdaxilə ilə həyata keçirilir.
  • Şablon Funksiyaları: Bir çox funksiyaları belə, HTML code seqmentləri (No pop-menülerde, cədvəllər, pop-up, və s.) Yaradan-line digər şablonları content tapılanlar məzmun Diziler üzərində loop kimi vəzifələri idarə etmək üçün şablon dizayner mövcuddur s, rəng olsa velosiped, e-mail çıxış üçün mətn biçimlendirme.
  • Filters:. Proqramçı şablon çıxış tam nəzarət və pre-filtreler, post-filtreler və çıxış-filtreler ilə tərtib şablon məzmun var
  • Resources:. Templates şablonları onlardan istifadə sonra, yeni resurs işleyicileri yaradılması ilə mənbələrdən hər hansı bir sayı çəkilmək bilər
  • Plugins: Demək olar ki, Smarty hər aspekti plugins istifadə edərək idarə olunur. Onlar ümumiyyətlə plugin kataloq onları düşmə və sonra şablon onları qeyd və ya proqram kodu onları istifadə kimi asandır. Bir çox istifadəçi icma fəaliyyətləri də mövcuddur. (Forum və wiki plugins bölməsinə baxın.)
  • Add-ons: Bir çox istifadəçi icma ons Add-s Bu alətlər inkişaf dövrü sürətləndirmək kömək Pagination, Form Qiymətləndirmə, Drop Down Menus, calander Tarix alıcılar, kimi mövcuddur əməyi, yenidən heç bir ehtiyac yoxdur Artıq sabit və yerləşdirilməsi üçün hazır tam və ya debug kodu uydurursunuz. (Forum və wiki Add-ons bölməsinə bax).
  • Ayıklama. Smarty daxili şablon dizayner təyin dəyişənlərin bütün bilərsiniz və proqramçı şablon göstərilməsi sürəti araşdırmaq bilər, belə ki konsol ayıklama
  • ilə gəlir
  • tərtibi. Smarty şablonları run-time təhlil aradan qaldırılması, pərdə arxasında PHP kodu daxil şablonları tərtib
  • Performance: Smarty geniş xüsusiyyət dəsti baxmayaraq, çox yaxşı həyata keçirir. Smarty imkanları ən on-demand yüklənir plugins yalan. Smarty sizin proqram kodu minimuma endirilməsi və tez, daha az səhv meylli proqram inkişaf / yerləşdirilməsi nəticəsində çoxsaylı təqdimat tools ilə gəlir. Smarty şablonları PHP tərtib almaq bahalı şablon fayl tarar aradan qaldırılması və PHP op-kodu sürətləndiriciləri sürəti yararlanarak məcburi (bir dəfə) faylları.

Bu azad yeni nədir:

  • super qlobal giriş dəyişikliklər geri, əvəzinə üçün USE_SUPER_GLOBALS etibar təhlükəsizlik

nədir versiyası 2.6.23 Yeni

  • {riyaziyyat} tənliklər zolaq backticks (mohrt)

  • Şablon mövcuddur, lakin
  • atmaq səhv deyil oxunaqlı (mohrt)

nədir versiyası 2.6.22 Yeni

  • Bu azad Smarty 2.6 ilə qarşılaşdı bir problem URL .21 azad və PHP 5.2 bir PCRE mühərrik səhv. Əlaqə chaining səhv qarşısını almaq üçün qaldırıldı. Əlaqə chaining Smarty 3 yenidən görünür.

Geliştirici digər proqram New Digital Group, Inc.

Smarty
Smarty

13 Apr 15

Şərh Smarty

Şərhlər tapılmadı
Şərh əlavə
Images yandırın!