Smarty 3
Smarty 3 je u alpha, navodno donosi dosta unapređenja, osim što je čist PHP5 kažu da je i brzina poboljšana 2-2,5 puta:
Citat:
|
cool, vec sam mislio da je smarty razvoj potpuno umro
|
Koliko sam ja video, iza nekih fensi imena kriju se jednostavne izmene, pa tako kada kažu "exception error handlig" tu nema ništa extra, čak je poželjno da postavite svoje default exception handlere jer smary sada umesto "trigger_error" zove "throw new Exception". To je što se tiče pluginova manje-više sve, najveće izmene su u samoj Smarty klasi a kompajler je sada razbijen u kompajler funkcije.
A opet, neke izmene su značajne, već sam primetio dosta promenjenog koda, a kažu da je napisano od nule. Pa da vidimo šta će biti sa tim. |
Evo ovde ima spisak noviteta: http://smarty-php.googlecode.com/svn...ibution/README
Off Topic: Napokon izbacuju {section} koji ionako nije imao veze sa vezom :) Evo i jedne važne izmene: The need for {literal} is pretty much going away. Delimiters followed by whitespace will no longer be parsed as a template tag. To znači da { nesto } neće da generiše smary error već će da ispiše baš to, što je recimo dobro za bilo kakav javascript. Jedino što ne vidim nikakvu ozbiljnu potrebu za uveđenjem "php" resource, znači template sada može da bude i običan php file, ali u tom slučaju ne funkcioniše built in security, što je manji problem, a veći problem je što ne funkcionišu modifiers u php templates. |
Pošto ova tema postaje kao moj blog na kome su zabranjeni komentari, u to ime da nastavim pa ako nekoga interesuje - super:
Namestio sam da mi radi Smarty 3, nije tolika frka kao što sam prvi put pomislio jer mi je izbacivao neke čudne greške tipa "ne postoji modifier default" koji je deo smarty paketa pa je neverovatno da ne postoji, na kraju sam provalio da za plugins dir mora da se navede apsolutna putanja za razliku od ranije kada je bila dovoljna samo relativna putanja. Morao sam da popravim još par stvari u templates jer sada prijavljuje grešku ako zagrade nisu kako treba, recimo ovo {if $nesto->funkcija ('test') } prijavlujuje gresku jer se pojavljuje space izmedju imena funkcije i zagrade, kao i pre zatvorenog delimitera. Na kraju sam uradio i malo benchmark, cisto da proverim da li je istina ono sto pricaju o brzinu. Nije to neki naucni benchmark, jednostavno sam po 10-ak puta ponovio sve i dobijao sam skoro uvek priblizno iste vrednosti tako da racunam da je otrpilike tacno: Smarty 2 (nije kompajliran template): Total page load: 0.475 Smarty 2 (kompajliran template): Total page load: 0.319 Smarty 3 (nije kompajliran template): Total page load: 1.825 Smarty 3 (kompajliran template): Total page load: 0.122 To znači da je tačno da je smarty 3 kada je kompajliran bar 3 puta brži od kompajliranog smarty 2, ali je zato proces kompajliranja daleko sporiji. Dobio sam jednom i vrednost od 4 sekunde kada template nije bio kompajliran u Smarty 3. Dakle, na LIVE serveru obavezno prekompajlirati template čim se uploaduje neki novi, odnosno izbegavati akcije tipa "clear all compiled" već očistiti samo one koji su izmenjeni (ako je isključen "compile check" kao što i treba da bude na live serveru) |
tjah, a ja bas navikao da koristim {section} za ispis podataka iz baze..
|
Da, znam, ti, ja i milijardu drugih jer im manual iz nekog razloga forsira primere sa section. To je isto kao što vidiš danas milijardu PHP programera i korisnika koji programiraju sa die() funkcijom - većina primera u PHP manualu su: if (nesto nije u redu) die ();
|
Citat:
|
Znaš da sam pomislio kada sam to napisao da će sada neka cepidlaka od svega što sam napisao do sada da se uhvati za ovo. :) Zašto baš za to? Pa zato što je to najnebitnija reč od svih napisanih. :)
To je, bre, stilska figura a ne statistički podatak. |
Kôd:
To je isto kao što vidiš danas <span class="hiperbola">mnogo</span> PHP programera ... |
Vreme je GMT +2. Trenutno vreme je 02:08. |
Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.