Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jaki "Najchudszy" system szablonów polecacie?
Forum PHP.pl > Forum > PHP
Babcia@Stefa
Witam, jaki "najchudszy" i najszybszy system szablonów polecacie?

Moje wymagania:
- Podstawowe funkcje
- Pętle
- Tabelki, divy typu $tpl -> addrow ( .., .., .. ); lub coś podobnego według szablonu
- Szybkość

Pozdrawiam, WebNuLL
Crozin
Hmmm... "czyste" PHP?
sowiq
Temat: szablonyocena_Prosty_sytem_szablonow_UI ? smile.gif
erix
Cytat
Moje wymagania:
- Podstawowe funkcje
- Pętle
- Tabelki, divy typu $tpl -> addrow ( .., .., .. ); lub coś podobnego według szablonu
- Szybkość

XML + XSLT [;
Babcia@Stefa
Dziękuję za szybkie odpowiedzi, rozważam teraz ten system szablonów, podkreślam jednak że system szablonów który szukam musi być bardzo szybki ( czas wykonywania ), ponieważ to rozbudowany CMS.

Jeszcze dodam żeby był najlepiej na jakiejś licencji GNU albo coś podobnego, nie CC - potrzebuję do obszernego CMS'a i frameworka razem wziętego.

@Crozin
Niestety nie, potrzebuje szybkiego systemu szablonów, w miare normalnego, nie musi być bogaty w funkcjach byle by spełniał podstawowe wymagania.

Pozdrawiam, WebNuLL
sowiq
Wydaje mi się, czy wybrzydzasz? smile.gif
Czemu nie chcesz zastosować Smarty? Rozwinięty projekt, dobra dokumentacja, łatwo dopisujesz własne modyfikatory/funkcje, obsługa cache (szybkość)...

Zresztą - zawsze możesz napisać sobie coś, co w pełni zaspokoi Twoje wymagania smile.gif
Babcia@Stefa
Myślę że nikogo nie obrażę mówiąc w ten sposób, ale według mnie Smarty to KOMBAJN, ma za dużo funkcji których ja nie potrzebuję, samo okrajanie go to było by dużo roboty.

Tak więc potrzebuję czegoś małego poprostu, co będzie szybko się wykonywało, bez zbędnych funkcji itp.

Pozdrawiam, WebNuLL
erix
Mówię Ci - XSLT. [;

Natywny parser, czego chcieć więcej?
Babcia@Stefa
Cytat(erix @ 23.06.2009, 18:07:55 ) *
Mówię Ci - XSLT. [;

Natywny parser, czego chcieć więcej?


Dzięki, erix.
To mam już 2 propozycje, zobaczę, po testuję.

Proszę o jakieś propozycje, może ktoś się wstawi za którąś z tych obecnych?

Pozdrawiam, WebNuLL
singles
Możesz spróbować jeszcze PEAR::Flexy. Jest bardzo prosty (momentami aż za bardzo), wszelakie funkcje możesz sobie dopisać.
Jeśli chodzi o szybkość, to niestety nie przeprowadzałem testów, w sieci też nie znalazłem - tak więc testy na własną rękę.
Babcia@Stefa
Cytat(singles @ 23.06.2009, 18:16:46 ) *
Możesz spróbować jeszcze PEAR::Flexy. Jest bardzo prosty (momentami aż za bardzo), wszelakie funkcje możesz sobie dopisać.
Jeśli chodzi o szybkość, to niestety nie przeprowadzałem testów, w sieci też nie znalazłem - tak więc testy na własną rękę.


Wymaga jakiejś biblioteki w PHP?

Pozdrawiam, WebNuLL
em1X
a czy w ogóle potrzebny Ci jakiś system szablonów?

czysty php będzie najszybszy zawsze.
Babcia@Stefa
em1X, obawiam się że tak, po rozplanowaniu wszystkiego wyszło że trzeba mieć system szablonów.
#WYCIĘTO ZBĘDNE SZCZEGÓŁY#

Obawiam się tego że CMS/Framework będzie wolno chodził, ale do tego mam specjalne nie codzienne, choć świetne rozwiązanie, ale i tak muszę oszczędzać czas wykonywania.

Pozdrawiam, WebNuLL
em1X
Akurat CMSów to jest tyle, ile grzybów po deszczu więc raczej możesz być spokojny.
Yii nie korzysta z żadnych szablonów i kupa ludzi nie ma z nim problemów.

Zamiast na szablonach lepiej skup się na dobrym cache'owaniu.
Moli
Cytat
no zdradziłem za dużo informacji o Swoim projekcie i pewnie zainspirowałem kogoś do budowy konkurencji

Myślę że wszystkich.

@em1X - Autor już napisał nie może być czyste php więc po co pytasz o to ?
@Babacia@Stefa - Skoro potrzebujesz tak mało opcji, dostosowane do siebie, to może napiszesz własny prosty system szablonów winksmiley.jpg
viking
A co to znaczy "czysty php"? Przykładowo PHPTAL wykonując kompilację szablonu transformuje wszystko na php
  1. <title><?php
  2. $ctx->noThrow(true) ;
  3. if (!phptal_isempty($_tmp_1 = $ctx->title)):  ;
  4. ?><?php
  5. echo phptal_escape($_tmp_1) ;
  6. else:  ;
  7. ?>

Tak wygląda wynikowy szablon i to on jest wykonywany co odsłona. A w zamian mamy super czytelny kod możliwy do przekazania innej osobie, który można bezpośrednio podejrzeć w przeglądarce i do tego informację i źle zamkniętych tagach, możliwość szybkiej zmiany html->xhtml (transformacja wszystkich tagów > na />). Narzut jaki powstaje w porównaniu do np zapytań do bazy nic nie znaczy.
phpion
Cytat(viking @ 24.06.2009, 06:58:25 ) *
A co to znaczy "czysty php"?

  1. <?php if ($zalogowany): ?>
  2. <p>Jestes zalogowany.</p>
  3. <?php else: ?>
  4. <p>Nie jestes zalogowany.</p>
  5. <?php endif; ?>
viking
Nie czytałeś uważnie bo właśnie o to chodzi. Podobny bardzo kod jest wynikiem kompilacji szablonu i to on jest wykonywany, co więcej masz automatycznie anty XSS. A takiego mieszańca php/html fatalnie się odczytuje jeszcze edytory miewają problem z podpowiadaniem składni.
singles
Cytat(Babcia@Stefa @ 23.06.2009, 20:20:42 ) *
Wymaga jakiejś biblioteki w PHP?

Dokumentacja - Dependencies
phpion
Cytat(viking @ 24.06.2009, 08:25:31 ) *
A takiego mieszańca php/html fatalnie się odczytuje jeszcze edytory miewają problem z podpowiadaniem składni.

Nie zgodzę się z Tobą. Jeżeli ten kod traktujesz jako mieszanie PHP z HTML to jak określisz to co robi np. Smarty? Mieszanie HTML z czym? Bo z czymś na pewno. Mieszanie PHP z HTML to przecież zagnieżdżenie warstwy prezentacji danych w warstwie logiki uniemożliwiające proste podmienianie szablonów/widoków.

Automatyczne zabezpieczenie XSS? U mnie dba o to framework, a nie system szablonów.

Osobiście nie widzę większego sensu korzystania z czegoś, co i tak zostanie skompilowane do kodu PHP. Poza tym pamiętam jak pracując na Smarty głowiłem się jak zrobić pętlę w pętli, która jeszcze jest jakoś tam zakręcona.
Pilsener
Najchudszy i najprostszy? To tylko {zmienna}, po co Ci jakieś pętle i ify?

Np. takie standardowe menu:
wgrajfoto.pl/pokaz/img0609/menu6323.jpg

A weź to teraz zrób pseudoszablonowym językiem, pętla + całe stado ifów, żeby użytkownik mógł wygodnie przeskakiwać od menu podwójnego, pełnego do standardowego musi opanować pseudojęzyk szablonów, trzeba zatem mu napisać dokładną instrukcję itp. itd. a user potrzebuje rozwiązań topornych i prostackich. Ma to niewątpliwie jakieś tam zalety, jednak zapomnij wtedy o szybkości, gdy chcesz popracować nad wydajnością to dochodzi buforowanie, kompilowanie, a potem się okaże, że 99% użytkowników nawet się tego nie dotknie, a te 1% to wpisy na forum dotyczące np. smarty smile.gif
viking
Cytat(phpion @ 24.06.2009, 08:43:07 ) *
Nie zgodzę się z Tobą. Jeżeli ten kod traktujesz jako mieszanie PHP z HTML to jak określisz to co robi np. Smarty? Mieszanie HTML z czym? Bo z czymś na pewno. Mieszanie PHP z HTML to przecież zagnieżdżenie warstwy prezentacji danych w warstwie logiki uniemożliwiające proste podmienianie szablonów/widoków.

HTML z pseudo językiem.

Cytat(phpion @ 24.06.2009, 08:43:07 ) *
Automatyczne zabezpieczenie XSS? U mnie dba o to framework, a nie system szablonów.

Nie wszyscy używają frameworków, nie każdy musi pamiętać o tym. A jak to wygląda w praktyce to poczytaj sobie dowolny temat gdzie wypowiada się początkujący.

Cytat(phpion @ 24.06.2009, 08:43:07 ) *
Osobiście nie widzę większego sensu korzystania z czegoś, co i tak zostanie skompilowane do kodu PHP. Poza tym pamiętam jak pracując na Smarty głowiłem się jak zrobić pętlę w pętli, która jeszcze jest jakoś tam zakręcona.

Jeszcze raz Twój kod tym razem z drobną poprawką (ciekawe czy w ogóle zauważysz i ile Ci to zajmie, a pliki odpowiedzialne za widok to raczej nie 5 prostych linijek):
  1. <?php if ($zalogowany): ?>
  2. <p>Jestes zalogowany.</p>
  3. <?php else: ?>
  4. <p>Nie jestes zalogowany.<p>
  5. <?php endif; ?>

PHPTAL automatycznie wyrzuci błąd. Musisz z jakiegoś powodu dać ten plik klientowi. Co wyświetli przeglądarka? Zignoruje <?php?> jako nieprawidłowe tagi a reszta zostanie jako zwykła sieczka wyświetlona. W PHPTAL przeglądarka zignoruje przestrzeń nazw i wyświetli poprawny plik który dodatkowo możesz poddać walidacji. Możesz jeszcze jedną prostą opcją (PHPTAL::XHTML, PHPTAL::HTML5, PHPTAL::XML) zmienić kod wynikowy.
Crozin
Jak sieć długa i szeroka wszędzie widzę, że szablony mają być proste bo będzie w nich maczał palce ktoś kto nie ma o nich pojęcia. Ludzie! Szablony to miejsce pracy dla front-end'owców i "klient" w ogóle nie ma prawa tam niczego ruszać.

@viking: narzędzie dobiera się względem oczekiwań. Jak ktoś pisze coś bardziej rozbudowanego, to najczęściej pracuje w oparciu o jakiś FW. On dba o takie rzeczy jak zabezpieczenie przed XSS.

Poza tym, jeżeli Tobie praca z PHPTAL daje jakieś sensowne korzyści - to bardzo dobrze! Ale nie każdemu musi.

[quote]a pliki odpowiedzialne za widok to raczej nie 5 prostych linijek)[./quote]No 5 nie, ale nawet gdy ostatnio pracowałem nad kodem dostarczonym przez klienta (tragedia) to nie wyszło mi więcej jak jeden-półtora ekranu tekstu na plik - jakby kod był normalny powyżej "ekranu" by kod nie sięgał.
em1X
Kod
{foreach from=$array item=item key=key}
   {foreach from=$item item=iteminner key=keyinner}

   {/foreach}
{/foreach}


co w tym trudnego?

Cytat("phpion")
Osobiście nie widzę większego sensu korzystania z czegoś, co i tak zostanie skompilowane do kodu PHP


Imvho nie masz racji. Gdyby to było kompilowane na żywo to bym się zgodził. Ale wszystko jest robione raz i idzie z cache'u, a smarty generalnie ułatwia pracę.
bim2
Babcia@Stefa, rozumiem że boisz się wydajności? Tylko wytłumacz mi, jak ma być szybciej jeśli to jest najzwykleisz kod php pomieszany z html (po cache). Przecież tylko raz przemielasz szablon.

Dla przykładu mój parser:
Cytat
* index.tpl.html (0.00486) [cache]
* IndexUp.tpl.html (0.00292) [cache]
* IndexDown.tpl.html (0.00307) [cache]

Na localhoscie.
erix
Cytat
jeszcze edytory miewają problem z podpowiadaniem składni.

No tak, windowsowy notanik ma. [;

Wszystkie IDE działają OK.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.