Smarty

Programinė įranga Screenshot:
Smarty
Programinė detalės:
Versija: 3.1.5
Įkėlimo datą: 11 May 15
Licencija: Nemokamai
Populiarumas: 1

Rating: nan/5 (Total Votes: 0)

"Smarty yra ne iš tikrųjų" template engine ", tai būtų tiksliau apibūdinti kaip" Šablonas / pateikimo tvarka. " Tai reiškia, kad ji suteikia programuotojas ir šablonų kūrimo su įrankiais automatizuoti užduotis dažniausiai sprendžiami pateikimo sluoksniu paraiškos turtus. Aš pabrėžiu žodį sistemą, nes Smarty nėra paprastas lipdukas pakeisti šablonų variklis. Nors ji gali būti panaudoti tokiu paprastu tikslu jos dėmesys skiriamas greitai ir neskausmingai kūrimo ir diegimo jūsų prašymą, išlaikant aukštos kokybės, mastelio, saugumą ir būsimą augimą.
Taigi yra Smarty jums tinka? Ką jis nužengia į tai, naudodami tinkamą įrankį darbui. Jei norite paprastą kintamąjį pakeisti, galbūt norėsite pažvelgti į kažką paprastesnio ar net riedėti savo. Jei norite tvirtos šablonų sistema su daugybe įrankių, kad padėtų jums, kaip jūsų paraiška vystosi į ateitį, Smarty tikėtina geras pasirinkimas.
Kodėl jį naudoti? "
Vienas iš Smartys pirminės projektavimo tikslų yra palengvinti paraiškos kodas atskyrimą nuo pateikimo. Paprastai paraiškos kodas yra verslo logika jūsų prašymą, raštu ir palaikyti PHP kodą. Šis kodas yra palaikoma programuotojai. Pateikimas yra būdas jūsų turinys yra pateikiamas galutiniam vartotojui, kuris raštu ir prižiūrimi šablono failus. Šablonai yra palaikoma šablono dizainerių.
Jos labiausiai pagrindinės funkcijos, taikymo kodas renka turinį, priskiria jį į šablonų variklio ir rodo ją. Turinys gali būti kažkas panašaus į antraštę, šūkiu, autorius ir kūno laikraščio straipsnyje. Paraiška kodas neturi susirūpinimą, kaip šis turinys bus pristatytas į šabloną. Šablonas dizaineris yra atsakingas už pristatymą. Jie redaguoti šabloną failus, pridėti žymėjimo ir priartinti ją iki pabaigos. Tai paprastai apima tokius dalykus kaip HTML žymes pakopinių stilių ir kitas priemones, kurias teikia šablonų variklis.
Ši paradigma tarnauja keliems tikslams:
) Dizaineriai negalima nutraukti paraiškos kodą. Jie gali netvarka su šablonų visi jie nori, bet kodas išlieka nepažeistas. Kodas bus griežtesnė, saugesnė ir lengviau prižiūrėti.
) Klaidos šablonų atliekami tik su Smartys klaidų valdymo kasdienybe, todėl juos taip paprasta ir intuityvi, kaip įmanoma, kad dizaineris.
) Su pristatymą apie savo sluoksniu, dizaineriai gali pakeisti arba visiškai pertvarkyti ją nuo nulio, visi be įsikišimo iš programuotojas.
) Programuotojai nėra Messing su šablonais. Jie gali eiti apie išlaikant paraiškos kodą, keičiant vaizdo turinio įgytas, todėl naujų verslo taisykles, ir tt nepakenkiant pateikimo sluoksniu.
) Šablonai yra arti atstovavimas, ką galutinis rezultatas bus, kuris yra intuityvi požiūris. Dizaineriai nerūpi, kaip turinys pateko į šabloną. Jei turite pašalinių duomenis į šabloną, pavyzdžiui, SQL, tai atveria kad paraiškos kodą atsitiktinio ištrynimo ar pakeitimo dizaineris riziką.
) Jūs nesate atidarydami savo serverį į savavališkos PHP kodo vykdymą. Smarty turi daug saugos funkcijų pastatytas todėl dizaineriai nebus pažeisti saugumą, ar tyčia ar netyčia. Jie gali padaryti tik tai, ką jie tik šablonus.
Nors paraiškos kodas yra atskirtas nuo pateikimo, tai nebūtinai reiškia, kad logika yra atskirti. Paraiška kodas akivaizdžiai turi logikos, bet šablonai gali būti logika remiasi sąlyga, kad ji yra tik pristatymas. Pavyzdžiui, jei dizaineris nori kaitalioti lentelės eilutė spalvas ar didžiosiomis raidėmis kai skiriamas turinį, jie gali. Tai pristatymas logika, kažkas programuotojas neturėtų būti susiję su. Kaip dažnai jums buvo kai pristatymas rodoma viename stulpelyje, ir tada jūs norėjote jį du ar tris stulpelius, todėl prašymas kodas turi pakoreguoti, kad tilptų tai? Geresnis yra priskirti į vieną masyvą turinį ir leiskite šablonas tvarkyti pristatymą. Tai bus supaprastinti savo prašymą ir išlaikyti savo šablonus lanksti. Smarty tiekia įrankius valdyti tokia padėtis.
Tai nereiškia, kad Smarty apsaugo jus nuo išleidimą logika šabloną, turite turėti savidrausmės tiek. Čia yra iš nusėdimo verslo logika šabloną (tai tiesa, venkite tai daryti, jei apskritai įmanoma), pavyzdžiui:
{Jei $ smarty.session.user ir ($ user_type up "redaktorius" arba $ user_type up "Administratorius"),}
Redaguoti
{/} Jei
Logika patikrina, ar vartotojas yra prisijungęs, ir jie yra arba redaktorius arba administratoriai, tada jiems leidžiama redaguoti šį, kad redaguoti langelį rodo. Tai yra logika, kuri priklauso paraiškos kodą. Šablonas nerūpi ką įgaliojimai Šis vartotojas dar, tai tiesiog reikia žinoti, jei Redaguoti langas ar ne! Taigi pažvelkime į tinkamesnę požiūrio:
{Jei $ edit_flag}
Redaguoti
{/} Jei
Tai iki paraiškos programuotojas priskirti $ edit_flag, paprastą ir lengvai suprantamą kintamąjį šabloną. Tokiu būdu šablonas nebėra remdamasi savo pagrindinės duomenų struktūros. Jei sesijos duomenų struktūros formatas vis keičiasi, nieko reikia pakoreguoti šabloną.
Dabar leidžia pažvelgti į keletą dalykų, kuriuos galite padaryti su Smarty. Vienas dalykas, jis gali padaryti, tai custom funkcijas. Tai yra žymeles šabloną, kad atlikti tam tikrą užduotį. Pavyzdys:
{Html_image failas = "masthead.gif"}
Čia mes turime funkciją, vadinamą "html_image". Ši funkcija mano įvaizdį atsižvelgiant į "File" atributas ir daro visus reikalingus darbus sugalvoti šį HTML kodą:

Vaizdo funkcija tai padarė suprasti, aukštį ir plotį ir tiekti numatytąjį sienų vėliava Roboto. Žinoma, galima tiesiog naudoti statinį HTML tegus vietoj šablono, tačiau tai parodo, kaip pagal užsakymą funkcija gali būti naudojama siekiant supaprastinti labai bendrą užduotį. Dizaineris gali sutelkti dėmesį į dizainą ir mažiau dėl techninių dalykų. Be to, jei dizaineris nusprendžia lašas skirtingo dydžio pagrindinės informacijos antraštės paveiksliuko šablonas nereikia koreguoti.
html_image yra funkcija, kuri ateina su Smarty. Taip pat galite sukurti savo funkcijas. Štai dar ką vienas gali atrodyti pavyzdys:
{Html_link tipas = "gaminys" id = "abc123" tekstas = "Ugnies išperka Hotel"}
Tai naudojant pasirinktinį funkcija vadinama "html_link". Jis ateina su šiais HTML kodas:
Gaisro išperka Hotel
Ką tai atlikti? Už vieną, dizaineris nereikia būti susirūpinęs su URL formatu straipsnį. Su sunkiai koduojamų URL, kas atsitiks, jei vieną dieną programuotojas nusprendžia išvalyti viską, ir keičia URL sintaksę /display_article.php?id=abc123 į / Menas / abc123? Mes turime redaguoti kiekvieną šabloną su straipsnio URL. Tai tik vienas pavyzdys, kaip šablonas funkcija gali padaryti šablonai lengviau išlaikyti pavyzdys.
Dabar dėl programuotojų ir šablonų tiek. Anksčiau buvo minėta, kad programuotojas neturi rūpintis, ką šablonai daryti su turiniu. Tuo konceptualiai tai tiesa, bet realiame pasaulyje esate nesiruošia tikėtis šablono dizaineris turi sukurti visas šablonus iš plonos oro. Galų gale, verslo logika ar nustatyti, koks turinys yra priskirtas šablonus. Taigi, programuotojas paprastai nustatymo skeleto šablonai dizainerio pradėti. Tai paprastai yra pirminius elementus, pavyzdžiui, turinio kintamųjų ir skyriuje kilpų, o gal keletą paprastų žymėjimo žymės, kad jie neturi pradėti su dideliame netvarka medžiagos. Čia yra iš skeleto šabloną, kad ratai per straipsnių sąrašą ir rodo juos į lentelę pavyzdys:


{Pavadinimas skirsnyje = menas kilpa = $ straipsnio}


{/} Skyrius
{$ straipsnis [menas] .headline}
{$ straipsnis [menas] .date}
{$ straipsnis [menas] .author}

Rezultatas gali atrodyti taip:







Kaip vakarus laimėjo
2 gruodis 1999
John Wayne
Komanda pralaimi, Autobusų meta
2 vasaris 2002
John Smith
Gurmanams virimo
Sau 23, 1954
Betty Crocker

Dabar kai kuriuos bendriausius klausimus:
Kodėl naudoti šablonus ne visi? Kas yra toks kietas apie rašymo Vietoj {$ title}?
Padaryti ką lengviau skaityti nebuvo projektavimo tikslas, bet daugiau kaip šalutinis poveikis. Naudojant šablonus turi daug privalumų, iš kurių daugelis buvo paaiškinta pirmiau. Kadangi mes esame šabloną aplinkos Anyways, {$ pavadinimas} yra mažiau pašalinio nei Php echo $ pavadinime?; ? >, Ypač, kai jūs pradedate žiūri į jį ilgai puslapių turinio, todėl jis buvo gana akivaizdu, kad paprastesnis sintaksė padeda padaryti šablonai būtų lengviau skaityti ir prižiūrėti.
Šablonas laiko išanalizuoti, todėl prašymai daug lėčiau.
Tai gali būti tiesa, kai kuriais atvejais, bet su Smarty tai ne lėčiau nei vykdant PHP scenarijų. Pirmą vykdymo šabloną, Smarty template konvertuoja failus į PHP (vadinamas šablonas kaupimas.) Po to, PHP scenarijų, tiesiog įtraukti. Pora tai su PHP akceleratoriaus ir jūs tikrai turite greitą šablonų aplinką su minimaliu važtaraščius.
"Smarty yra pernelyg sudėtinga, kaip gali būti, kad greitai?"
Smarty branduolys yra gana liesas svarsto, ką ji yra pajėgi. Dauguma jos funkcionalumą slypi įskiepių. Įskiepiai architektūra yra suprojektuota taip, kad tik reikalingi papildiniai yra pakraunami pagal pareikalavimą. Su šia sistema, pridedant net šimtus naujų įskiepių nebus turėti įtakos jų veikimui. Tai daro Smarty greitai, keičiamo dydžio ir lanksti.
Smarty taip pat turi spartinimo funkcijas, kurios gali dinamiškai atnaujinti ir išlaikyti porcijas puslapyje Nepaslėpta slaptavietėje savo skonį. Buferinės saugo į kaupiamą šablonų produkcija, taupymo būtinybę vykdyti juos ant kiekvieno pritaikymo.
"Visa tai kalbama apie greitintuvai, kaip veikia Smarty paleisti be vieno?
Tiesą sakant, ji veikia gana gerai be jo. Smarty nereikalauja akceleratorių, bet šablonų failus patys pasinaudoti viena, kažką, kad yra unikalus Smarty (AFAIK). Jei neturite akceleratorių, šablonas vykdymas ne taip greitai, bet ne lėtas bet kokiomis priemonėmis, nes jie nėra patikrintas! Jūs taip pat išlaiko visus kitus privalumus ir savybes Smarty. Be to, kadangi greitintuvai yra laisvai prieinama yra tikrai ne pretekstas negali būti naudojant vieną. Jie padės rezultatus su visais PHP programas, naudojant Smarty, ar ne.
"Kaip tai gali būti lengviau išlaikyti?"
Kai viskas negali būti paaiškintas, bet tik patyrę. Atskyrimo logiką programų iš pateikimo nauda negali būti pabrėžta pakankamai. Smarty taip pat turi kai kurių gražus klaida tvarkymo funkcijas ir built-in Derinimo pulto, todėl jūs galite pamatyti šablono hierarchijos ir priskirtus kintamuosius iš pirmo žvilgsnio. Įrašyta užsakymą funkcijų Smarty yra taip paprasta, kaip nuleisti juos į plugin katalogą ir paminėti juos į šabloną.
"šabloną žodžius, kurie ne XML Mano redaktorius nepatinka."
Į {} skirtukų tik pagal nutylėjimą, jie lengvai įžvelgti tarp HTML žymes. Jei jums nepatinka jiems pakeisti savo skirtukus arba gal kažką daugiau XMLish kaip Taip pat yra daug naudotojo įmokų Dreamweaver ir panašiai, suteikti jiems į įnašas srityje išvaizdą.
Štai Smarty trumpai, tikiuosi galite ją įkelti į savo arsenalą priemonių interneto programų kūrimo. Tikrai sužinoti daugiau, skaitykite vadovą viršaus į apačią, prisijungti prie forumų ir pamatyti, ką žmonės diskutuoja

Įranga .

  • buferinės: Smarty suteikia smulkiagrūdis spartinimo funkcijas spartinimo visas ar dalių suteiktą interneto puslapyje, arba paliekant dalys Nepaslėpta slaptavietėje. Programuotojai gali registruotis šablonų funkcijas kaip būtų įkeliamas ar ne cachable, grupės talpyklą puslapių į loginius vienetus lengviau valdyti, ir tt.
  • Sąranka failai: Smarty galite priskirti kintamieji ištrauktas iš konfigūracijos failus. Šablonų dizaineriai gali išlaikyti vertybes bendrus kelių šablonų vienoje vietoje be įsikišimo iš programuotojas ir konfigūracijos kintamieji gali būti lengvai dalijasi programavimo ir pristatymas dalių taikymo.
  • Apsauga: šablonai, kurių sudėtyje nėra PHP kodą. Todėl šablonas dizaineris nesuk su visu galingumu PHP, bet tik funkcionalumo poaibis prieinami juos iš programuotojas (paraiškos kodas).
  • Paprasta naudoti ir prižiūrėti: Web puslapiu dizaineriai ne su PHP kodo sintaksę, bet vietoj to lengva naudoti šablonų sintaksė ne daug skiriasi nei paprasto HTML. Šablonai yra labai arti atstovavimas galutinės produkcijos, ženkliai sutrumpinti projektavimo ciklą.
  • Kintamosios modifikatorius: priskirtų kintamųjų turinys gali būti lengvai koreguojama rodymo laiko su modifikatorius, pavyzdžiui, rodant visose viršutiniame atveju HTML pabėgo, formatavimas datas nutraukiant teksto blokus, pridedant tarpų tarp simbolių ir tt Vėlgi , tai pasiekiama be įsikišimo iš programuotojas.
  • Šablonų Funkcijos: Daug funkcijų yra prieinami šablono dizaineris tvarkyti užduotis, pavyzdžiui, kurti HTML kodas segmentai "(meniu plėtojami, Stalai, iššokančių langų ir tt), rodyti turinį iš kitų šablonų in-line, kilpų per masyvų turinio , formatuoti tekstą elektroninio pašto produkcijos, Dviračiai, nors spalvų ir kt.
  • Filtrai:. Programuotojas turi visišką kontrolę šablonų produkcijos ir kaupiami šablono turinį iš anksto filtrai, pašto filtrai ir produkcijos filtrai;
  • ištekliai. Šablonai gali būti ištrauktas iš bet daugelio šaltinių kuriant naujas išteklių tvarkytojai, tada juos naudojant šablonus;
  • Įskiepiai: Beveik kiekvienas Smarty aspektas yra kontroliuojama per plugins naudojimui. Jie paprastai yra taip paprasta, kaip nuleisti juos į plugin katalogą ir tada paminėti juos į šabloną arba naudojant juos paraiškos kodą. Daugelis vartotojui Bendrijos įnašai yra taip pat prieinama. (Žr PLUGINS skyriuje forume ir wiki.);
  • Add-ons: Daugelis vartotojui bendruomenė prisidėjo Add-ons, yra, pavyzdžiui, numeracija, formos patvirtinimo, išskleidžiamajame meniu, Calander data rinkėjų, ir tt Šie įrankiai padeda pagreitinti vystymosi ciklą, nereikia iš naujo išradinėti dviratį arba debug kodą, kuris jau yra stabilus ir paruošta diegimui. (Žr Add-ons, skyrių forume ir wiki.);
  • Derinimo. Smarty ateina su built-in derinimo pultą, kad šablonas dizaineris gali matyti visi priskirtų kintamųjų ir programuotojas gali ištirti šablonų teikimo greitis
  • Surinkimas:. Smarty šablonų kaupia į PHP kodo užkulisiuose, panaikinant run-time apdorojant šablonų,
  • Spektaklis: Smarty atlieka labai gerai, nepaisant jos didžioji funkcijų rinkinys. Dauguma Smarty pajėgumus gulėti įskiepių, kurie yra pakraunami pagal pareikalavimą. Smarty ateina su daug pristatymų įrankiai, sumažinti savo paraiškos kodą ir todėl greičiau, mažiau klaidų tikimybė programų kūrimo / diegimo. Smarty šablonų gauti kaupiami PHP failus viduje (vieną kartą), panaikinant brangių šablono failą nuskaito ir sverto PHP Op-kodas greitintuvai greitį.

Kas naujo , šioje laidoje:

  • grįžti Super patekti į pasaulinę pokyčius, o vietoj remtis USE_SUPER_GLOBALS už saugumas,

Kas naujo versijos 2.6.23:

  • juostiniai atvirkštiniai apostrofai iš {} matematikos lygtis (mohrt)
  • mesti klaida, kai šablonas yra, bet neįskaitomas (mohrt)

Kas naujo versijos 2.6.22:

  • Ši laida adresai problema susidūrė su Smarty 2.6 .21 spaudai ir pcre variklis klaidą PHP 5.2. Metodas jungimo buvo ištrintas, kad būtų išvengta klaidų. Metodas jungimo vėl atsiras Smarty 3.

Kita programinė įranga kūrėjas New Digital Group, Inc.

Smarty

13 Apr 15

Komentarai Smarty

Komentarai nerastas
Pridėti komentarą
Pasukite ant paveikslėlio!