![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 505 Pomógł: 0 Dołączył: 8.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam ponownie,
Biorąc pod uwagę opinie i zalecenia forumowiczów , powstała pierwsza stabilna i oficjalna wersja klasy Chameleon do obsługi szablonów. Na wstęp drobne porównanie z klasą Smarty. Test symulujący całkowite przeładowanie strony z wykorzystanie cache dyskowego. Smarty korzysta ze skompilowanych szablonów , Chameleon z mapy tagów : Smarty : 500 iteracji (20 zmiennych) = 0.3475s Smarty : 500 iteracji (10 zmiennych) = 0.3067s Smarty : 500 iteracji (5 zmiennych) = 0.2965s Chameleon : 500 iteracji (20 zmiennych) = 0.2336s Chameleon : 500 iteracji (10 zmiennych) = 0.2095s Chameleon : 500 iteracji (5 zmiennych) = 0.2105s Kolejny test symulujacy kilkakrotne parsowanie szablonu podczas jednego wywolania strony, sytuacja ma miejsce gdy parsujemy kilkakrotnie ten sam szablon (np. formatka newsa) z zaladowana mapa tagow w pamieci. Oto wyniki : Smarty : 500 powtórzeń (20 zmiennych) = 0.2462s Chameleon : 500 powtórzeń (20 zmiennych) = 0.0981s ---------------- Co potrafi Chameleon : # Cache tagow na dysku twardym # Zmienne typu : {zmienna} {test} # Zmienne tablicowe jednowymiarowe : {tablica[0]} {tablica[1]} # Zagniezdzone IFy dowolnej glebokosci z obsluga negacji oraz ELSE (Narazie warunek sprawdzany jest logicznie tylko czy zmienna jest ustawiona) # Petle szablonowe # Podswietlanie blednych tagow # Proste operacje matematyczne ----------------------------------------------------------
Przyklad 1 : Zmienne zwykle Szablon : http://www.vertis.com.pl/chameleon/example...es/example1.tpl Demo : http://www.vertis.com.pl/chameleon/example...es/example2.php --
Przyklad 3 : Zmienne tablicowe Szablon : http://www.vertis.com.pl/chameleon/example...es/example3.tpl Demo : http://www.vertis.com.pl/chameleon/example...es/example3.php --
Przyklad 6 : Warunki Szablon : http://www.vertis.com.pl/chameleon/example...es/example6.tpl Demo : http://www.vertis.com.pl/chameleon/example...es/example6.php --
Przyklad 7 : Petle w szablonie Szablon : http://www.vertis.com.pl/chameleon/example...es/example7.tpl Demo : http://www.vertis.com.pl/chameleon/example...es/example7.php -- Klasę w wersji 1.0.0 można pobrać z http://www.vertis.com.pl/ Ten post edytował Bastion 18.06.2006, 22:58:47 |
|
|
![]() |
![]()
Post
#2
|
|
Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
Proponuje cos takiego:
5 - zwyklych zmiennych (np w tagach <meta>) 7 - modyfikatorów (np data, strtouper, strtolower, 1 litera z duzej ) 1 - petla z sama tablica wielowymiarowa (10 loopów, i w niej 15 zmiennych (powiecmy ze to takie standartowe newsy) w tym modyfikator daty, u powiekszenia pierwszej litery (tytul) + kolorowanie tych wierszy na przemian 1 - petla z obietkami, w tablicy 10 obiektów, kazdy obiekt powiedzmy ma 7 metod zwracajacych cos, i wrzuca sie to do szablonu, +modyfikator daty. z cycle Jak tak patrze srednio to powinno byc kolo 10kb teksty w nich, z tym ze wiekszosc znajduje sie w PETLACH (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) no i polecil bym jeszcze 2 include wpierw naglowek strony (header, czyli od <html> do <body>) i stopke (czyli stopke strony) Chyba to by było kompletne, chyba ze oczyms zapomnialem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Chcialem przewidziec jakis czesto spotykany scenariusz (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ps. Dodanie jakiegos warunka w petli wyswietlajacej np sprawdzenie czy dany text da sie drukowac czyli prosty if Kod {if print == true} ... mozna drukowac ... {/if} autor: Kod {if empty( autor )} // cos takiego (sprawdza czy cos jest w zminnej autor: {autor} {else} autor: anonim {/if} oczywiscie w petli |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 22:29 |