Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> Smarty
Karenin
post 8.06.2003, 12:28:35
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 7.06.2003

Ostrzeżenie: (0%)
-----


Zaczalem czytac o Smarty i sie zastanawiam czy to jest wogole potrzebne. Na pierwszy rzut oka to tylko komplikuje zycie. Po co mam sie meczyc z templatami jak moge dac zamiast <title>{title}</title> <title><? echo $title; ?></title> Czy to sie Wam przydaje? Zastanawiam sie nad jego uzywaniem. Przekonajcie mnie smile.gif
Go to the top of the page
+Quote Post
BzikOS
post 8.06.2003, 17:01:51
Post #2





Grupa: Przyjaciele php.pl
Postów: 660
Pomógł: 0
Dołączył: 28.08.2002
Skąd: Starachowice

Ostrzeżenie: (0%)
-----


Co prawda nie używam Smarty, tylko własnego systemu szablonów, ale idea jest ta sama - oddzielenie kodu php od html, a co za tym idzie czytelność.

A co do "komplikowania sobie życia" - spróbuj zrobić coś większego bez szablonów smile.gif
Go to the top of the page
+Quote Post
HaRy
post 8.06.2003, 20:01:13
Post #3





Grupa: Zarejestrowani
Postów: 152
Pomógł: 0
Dołączył: 15.05.2002
Skąd: Łódź

Ostrzeżenie: (0%)
-----


ja smarts'ow unzywam z wielkim powodzeniem ...

zaczalem zupelnie przypadkowo, gdyz potrzebowalwem systemu szablono, a mialem za malo czasu, by pisac swoj system ...

no i juz tak zostalem z nimi smile.gif

poklecam kazdemu, kto robi wieksze projekty, masowe ... bez szablonow wtedy ni rusz smile.gif
Go to the top of the page
+Quote Post
spenalzo
post 8.06.2003, 20:59:41
Post #4





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Robię teraz trochę skomplikowany sklep i wcale nie korzystam z szablonów - zamiast tego daję np.:
[php:1:97ae8a881b]<?php Pokaz_Kategorie(1); ?>[/php:1:97ae8a881b]
I działa bardzo ładnie. W wypadku gdy potrzebuję zmienić design czy skórkę podaję w funkcji odpowiednią zmienną zapisaną w sesji (dotyczącą aktualnej skóry), co potem przekłąda się na kolory itd. itp. Poza tym oparcie wyświetlania na funkcjach umożliwia większa modułowość strony - klient dostanie tylko to co kupił (docelowo ma mieć możliwość wyboru modułów jakie chce mieć), i nic poza tym.
Na razie nie widzę uzasadnionej potrzeby wykorzysyywania szablonów, więc ich nie stosuję.


--------------------

Go to the top of the page
+Quote Post
BzikOS
post 9.06.2003, 14:29:44
Post #5





Grupa: Przyjaciele php.pl
Postów: 660
Pomógł: 0
Dołączył: 28.08.2002
Skąd: Starachowice

Ostrzeżenie: (0%)
-----


Cytat
W wypadku gdy potrzebuję zmienić design czy skórkę podaję w funkcji odpowiednią zmienną zapisaną w sesji (dotyczącą aktualnej skóry), co potem przekłąda się na kolory itd. itp. Poza tym oparcie wyświetlania na funkcjach umożliwia większa modułowość strony - klient dostanie tylko to co kupił (docelowo ma mieć możliwość wyboru modułów jakie chce mieć), i nic poza tym.  
Na razie nie widzę uzasadnionej potrzeby wykorzysyywania szablonów, więc ich nie stosuję.

Uzasadniona potrzeba: praca zespołowa - ktoś pisze kod, ktoś inny robi grafę. W przypadku potrzeby zmiany grafiki na stonie, nie trzeba zaprzątać takimi pierdołami głowy programiście smile.gif
Go to the top of the page
+Quote Post
kurtz
post 9.06.2003, 14:37:22
Post #6





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

Ostrzeżenie: (0%)
-----


Cytat
Zaczalem czytac o Smarty i sie zastanawiam czy to jest wogole potrzebne. Na pierwszy rzut oka to tylko komplikuje zycie. Po co mam sie meczyc z templatami jak moge dac zamiast <title>{title}</title> <title><? echo $title; ?></title> Czy to sie Wam przydaje? Zastanawiam sie nad jego uzywaniem. Przekonajcie mnie :)
1) rozdzielenei logiki od prezentacji - osobno mamy html osobno pliki html
2) przejrystosc kodu - nie ma mieszanimi echo forow i whili z pritami ;)
3) mozliwosc cachowania danych - czesciowego, calkowitego, warunkowego - aspekt wydajnosciowy
4) mozliwosc latwego wykorzystnia tych samych danych do zaprezentowania w roznej formie (np tylko 10 slow newsa i caly news)
5) analogicnzie w druga strone - mozliwosc wykrozystnaia tego samego podszablonu w innym miejscu
6) przenisienie warunkowosci i zachowan na poziom smarty - mozesz na poziomie tempaltow robic ify, while etc oraz wywolywac obiekty {$page->showNews(10)}
7) osobno mozna modyfikwoac jedna czesc osobno druga ;)
8) mozliwosc tworzenia swoistych modulow poprzez include_php i dolaczenie lub nie pewnej funkcjonalnosci do samego serwisu.


uf tyle. jak cos wymysle moze dopisze.
pozdrawiam


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post
rzseattle
post 9.06.2003, 18:03:52
Post #7





Grupa: Przyjaciele php.pl
Postów: 554
Pomógł: 0
Dołączył: 4.04.2002
Skąd: Tychy

Ostrzeżenie: (0%)
-----


zwykłe szablony nie spelniaja moich żadnych podstawowych wymagan np. jezeli cala strona roznila sie tylko dwoma linijkami to trza bylo robic nowy *.tpl, tak samo bylo z petlami *.tpl zeby zaczac *.tpl dla petli i nastepny *.tpl aby zkonczyc (nie mylic z header body footer) - od tego wszystkiego az bolu glowy dostawalem.

No ale kiedy odkrylem SMARTY to mozna powiedziec WOW, tak mi sie spodobal ze az zmienilem juz skonczony projekt i nie zamiezam zaczynac nic innego bez szablonow. Mysle ze kazdy powinien sie przekonac o funkcjonalnosci np {section} {/section} . To wszystko daje mi przejzystosc i mozliwosc zmian w kazdej chwili bez zastanawiania sie nad tym - "po cholere ja kieddys uzylem tej zmiennej". W kazdym *.tpl mam "index" zmiennych do dyspozycji (skojazonych z szablonem ale niekoniecznie wykorzystywanych) i w oparciu o niego moge duzo zmienic w jednej chwili. To daje bardzo duza elastycznosc.

Tak wiec bardzo polecam.

A co do grafikow to hmm.. z doswiadczenia wiem ze jak taki zobaczy if-a to choroby dostaje, a jednak elastycznosc SMARTY-ego jest okupiona tym ze trza manuala znac co nie zawsze jest mile widziane wprzez graf.. moze ja mam tylko takiego pecha.


--------------------
"Real children don't go hoppity-skip unless they are on drugs."
Go to the top of the page
+Quote Post
kurtz
post 18.06.2003, 10:47:13
Post #8





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

Ostrzeżenie: (0%)
-----


Cytat
Czy to sie Wam przydaje? Zastanawiam sie nad jego uzywaniem. Przekonajcie mnie :)


z lekkim opiznieniem ale przypomnialem sopbie o dossc obszernym wytlumaczeniu "po co smarty" dostepnym w internecie.

http://smarty.php.net/whyuse.php

pozdrawiam


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post
Bora
post 27.06.2003, 19:21:43
Post #9





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 15.06.2003

Ostrzeżenie: (0%)
-----


troche sobie poczttałem o smartach.
Sam korzystam z innego prostrzego systemu.
Przeglądałem stronke http://smarty.php.net i w ich linkach jakos nie znalazłem strony dobrej graficznie.
Wszystkie są bardzo podobne czy to jest przypadek??

podajcie jak znacie jakaś dobrze wykonaną stronke używającą smarty.
Go to the top of the page
+Quote Post
DeyV
post 27.06.2003, 20:03:10
Post #10





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




No nie wiem, czy można powiedzieć, ze jest to stonka dobra graficznie, (w końcu nie wypada sie chwalić winksmiley.jpg ) ale proszę... www.japanserwis.pl
A tak na poważnie - SMARTY w żaden sposób nie ogranicza twórców. To tak jak by powiedzieć, że stony robione w php są prostrze niż te tylko w HTML... Absurd...


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
Puciek
post 27.06.2003, 20:05:21
Post #11


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


W życiu nie używałem smarty (tylko raz jako test) i nie przydaj mi sie to tongue.gif


--------------------

http://puciek.wordpress.com prywatnie o świecie
Go to the top of the page
+Quote Post
Bora
post 27.06.2003, 21:02:45
Post #12





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 15.06.2003

Ostrzeżenie: (0%)
-----


widocznie te linki byly akurat słabe.
Smarty są dobre ale wole skorzystać z sytstemu webcity prodstrzego.
Po małej modyfikacji może działąć chyba tyle samo co smarty smile.gif
Go to the top of the page
+Quote Post
DeyV
post 27.06.2003, 21:09:51
Post #13





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Jeśli bedziesz miał chwilę = poczytaj
:arrow: http://smarty.php.net/manual/en/what.is.smarty.php i
:arrow: http://smarty.php.net/whyuse.php

W tej chwili żaden inny system template nie oferuje tego poziomu...

_________________
Niby 800 to nie dużo, ale ...


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
kurtz
post 30.06.2003, 10:33:05
Post #14





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

Ostrzeżenie: (0%)
-----


Cytat
W życiu nie używałem smarty (tylko raz jako test) i nie przydaj mi sie to :P
usunac ta wiadomosc?


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post
kurtz
post 30.06.2003, 10:33:55
Post #15





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

Ostrzeżenie: (0%)
-----


Cytat
Po małej modyfikacji może działąć chyba tyle samo co smarty :)
prosze podaj linka do tego webcity systemu. korzystam z smarty juz dosc dlugo i wydaje mi sie mylisz.


pozdrawiam


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post
Bora
post 30.06.2003, 15:02:05
Post #16





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 15.06.2003

Ostrzeżenie: (0%)
-----


[php:1:b5a2c0f30a]<?php
<?
class template
{
var $unparsed = array(0 => "");
var $parsed = "";
var $blocks = array("default" => "");

function load($plik)
{
$this -> unparsed = @file($plik.".tpl");
}

function parse()
{
$this -> parsed = "";
$cnt = count($this -> unparsed);
for($i = 0; $i <= $cnt; $i++)
{
$tekst = $this -> unparsed[$i];
$found = array();
if(preg_match_all("#{(.+?)}#is", $tekst, $found))
{
foreach($found[0] as $block)
{
$block = str_replace("{", "", $block);
$block = str_replace("}", "", $block);
$tekst = str_replace("{".$block."}", $this -> blocks[$block], $tekst);
}
}
$this -> parsed .= $tekst;
}
}
}
?>
?>[/php:1:b5a2c0f30a]

chyba to też ten sam
http://forum.php.pl/viewtopic.php?t=2971&h...ht=pregmatchall


jednak mi osobiście sie bardziej podoba ten parser który znalazlem na forum:

[php:1:b5a2c0f30a]<?php
function parse1($file, $blocks = array()){
if(file_exists($file)){
$f = fopen($file, 'r');
$unparsed = fread($f, filesize($file));
fclose($f);
}
else{
die('Plik "'.$file.'" nie istnieje!');
}

if(preg_match_all('#{(.+?)}#is', $unparsed, $found)){
$parsed = $unparsed;
foreach($found[1] as $block){
$parsed = str_replace('{'.$block.'}', $blocks[$block], $parsed);
}
}

return $parsed;
}
?>[/php:1:b5a2c0f30a]

http://forum.php.pl/viewtopic.php?t=2658

Jest on szybszy od tego z webcity i od smartów.
Zresztą smarty są bardzo wolne.
Sam napisałem parser który potrafi zrobić includowanie obsługuje subsekcje i jest o wiele szybszy od smartów
Go to the top of the page
+Quote Post
mazy
post 30.06.2003, 15:13:16
Post #17





Grupa: Zarejestrowani
Postów: 69
Pomógł: 4
Dołączył: 12.03.2003
Skąd: Suwałki

Ostrzeżenie: (0%)
-----


całkowicie zgadzam się z przedmówcą ! smile.gif
ps. niech ktoś mi powie jak SMARTY ogramicza webmastera...
Go to the top of the page
+Quote Post
dragossani
post 30.06.2003, 16:06:12
Post #18





Grupa: Przyjaciele php.pl
Postów: 398
Pomógł: 0
Dołączył: --
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Dla zainteresowanych: porównanie wydajności.

Przy skomplikowanych stronach i włączonym akceleratorze, Smarty jest bezkonkurencyjny jeśli chodzi o wydajność. Dodam, że w takich właśnie warunkach pracować będzie przyszły serwis php.pl.


--------------------
cease this long, long rest / wake and risk a foul weakness to live / when it all comes down / watch the smoke and bury the past again / sit and think what will come / raise your fears and cast them all away
Go to the top of the page
+Quote Post
Bora
post 30.06.2003, 16:57:27
Post #19





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 15.06.2003

Ostrzeżenie: (0%)
-----


ja porównywałem dokładnie smarty z tym na webcity i poprzedni przykład

szablon był taki (ze strony smartów)
Kod
<html>

<head>

<title>User Info</title>

</head>

<body>



User Information:<p>

  

Name: {$name}<br>

Address: {$address}<br>



</body>

</html>


jest to szablon z zródeł smartów.

W pętli 1000 wyniki były:
Smarty : 18.81292 sekund
Webcity : 9.10678 sekund
"Moje" : 8.51534 sekund
Go to the top of the page
+Quote Post
kwiateek
post 30.06.2003, 21:29:36
Post #20





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 13.01.2003
Skąd: 3rd ball of mud behind a big ball of burning gas

Ostrzeżenie: (0%)
-----


Bora ale gdzie masz takie sytuacje zblizone do Twojego testu. Wydaje mi sie ze test jest bez sensu.


--------------------
It's Time to Join the PLD Linux Generation!
<? while (!$success) { $try++; } ?>
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 05:05