Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

3 Stron V  < 1 2 3 >  
Reply to this topicStart new topic
> [Klasa] Chameleon 1.8.0
ajgon
post
Post #21





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.07.2005

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


Hmmm... nie wiedzialem, ze class_exists wywoluje __autoloadera ;] Coz, czlowiek uczy sie cale zycie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Slump
post
Post #22





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 3.01.2004
Skąd: Iława

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


Tylko sie z tego cieszyc (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Powodzenia w dalszym rozwoju.
Go to the top of the page
+Quote Post
toczek
post
Post #23





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 20.06.2005
Skąd: krakow/rzeszow

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


(IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) , ja mialbym pytanie czy przewidywane jest pojawienie sie bardziej zloznonych warunkow w "if". W sensie

  1. <?php
  2.  
  3. {@if(zmienna == 'tekst')}
  4. blablabla
  5. {@fi}
  6.  
  7. ?>


bo narazie z tego co widze to mozna sprawdzac tylko czy zmienna jest ustawiona czy nie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) .

oraz drugie pytanko (laczace sie potrochu z pierwszym (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ) na temat dostepu do zmiennych globalnych, get'ow itd. ala :
  1. <?php
  2.  
  3. {@if(session['logged'])}
  4. zalogowano
  5. {@fi}
  6.  
  7. {@if(get['page'] == 1)}
  8. ....
  9. {@fi}
  10.  
  11. ?>

lub na zasadzie jak w smarty (smarty.session.nazwa ; smarty.const.NAZWA ; itd). Wiem ze moge zrobic kopie tablic calych z poziomu kodu php i przydzielic im oddzielna nazwe przy pomocy metody "setVar('session',$_SESSION)" ale tak byloby raczej wygodniej i bez marnowania pamieci (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

to tyle mojego narzekania (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował toczek 2.05.2006, 00:58:28
Go to the top of the page
+Quote Post
ajgon
post
Post #24





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.07.2005

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


I jeszcze malutka prosba z mojej strony (w sumie duperela)

  1. <?php
  2. // zmienne prywatne
  3. private $php_file = null;
  4. private $txt_file = null;
  5. private $source_php = null;
  6. private $vars = null;
  7. private $cycle_values = array();
  8. private $cycle_index = array();
  9. ?>


Moglyby te zmienne domyslnie byc protected ? Ulatwia to pisanie klas dziedziczacych, bez gmyrania w oryginale ;]

edit: ChameleonML - dziala podobnie jak Smarty ML - mamy oddzielny katalog z tlumaczeniami do kazdego jezyka z plikiem global.lng w srodku. Plik ma forme ZMIENNA=wartosc, natomiast w .tpl wstawiamy je w postaci ##ZMIENNA## . Zaleznie z jakim jezykiem wykonamy konstruktor, z takiego katalogu bedzie parsowany jezyk. Nie recze za niego, rozwiazanie z ml.tmp definitywnie trzeba zmienic ;], tak samo brakuje metod do ustawiania jezyka oraz ogolnego przetestowania tego - moze komus sie przyda ;] Jak zdam kolokwium w piatek to usprawnie - chyba, ze komus sie bedzie wczesniej chcialo. Narazie ma to status hmm... proof of concept ? (IMG:http://forum.php.pl/style_emoticons/default/cool.gif) Aha, zeby dzialalo trzeba zmienic w chameleonie zmienne private na protected (IMG:http://forum.php.pl/style_emoticons/default/aaevil.gif)

Ten post edytował ajgon 2.05.2006, 01:29:17
Go to the top of the page
+Quote Post
FiDO
post
Post #25





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Dolaczam sie do requesta z if'ami.. nawet nie wiedzialem, ze sa tylko takie proste. Fajna jest zabawa z parsowaniem dowolnie zagniezdzonych if'ow z obsluga nawiasow, polecam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Siadlem dzisiaj chwile (a powinienem wlasnie robic projekt (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) ) na OPT sciagnietym z SVN i udalo mi sie w koncu odpalic ten cycle, wiec przeprowadzilem pare testow.. Wyniki tylko z szablonu pierwszego, w ktorym wczesniej OPT nie bralo udzialu.

Kod
Cache = 0
Template = tpl_1.html

Testing Chameleon 1.2.0                =>  123.08 requests/s
Testing Chameleon 1.5.0                =>  147.13 requests/s
Testing Chameleon 1.6.0                =>  147.13 requests/s
Testing Nemesis 1.3.0b                 =>  133.33 requests/s
Testing OPT 1.0.0 RC3                  =>   93.43 requests/s
Testing OPT 1.0.0 RC3 Lite             =>  113.27 requests/s
Testing OPT 1.0.0 RC3 Performance      =>   95.52 requests/s
Testing OPT 1.0.0 RC3 Performance Lite =>  116.36 requests/s
Testing Savant 2.4.3                   =>  114.29 requests/s
Testing SmartTemplate 1.0.2            => skipped
Testing Smarty 2.6.13                  =>   58.18 requests/s
Testing Smarty Light 2.2.12            =>   54.47 requests/s

Kod
Cache = 1
Template = tpl_1.html

Testing Chameleon 1.2.0                =>  124.27 requests/s
Testing Chameleon 1.5.0                =>  272.34 requests/s
Testing Chameleon 1.6.0                =>  266.67 requests/s
Testing Nemesis 1.3.0b                 =>  256.00 requests/s
Testing OPT 1.0.0 RC3                  =>  129.29 requests/s
Testing OPT 1.0.0 RC3 Lite             =>  170.67 requests/s
Testing OPT 1.0.0 RC3 Performance      =>  128.00 requests/s
Testing OPT 1.0.0 RC3 Performance Lite =>  168.42 requests/s
Testing Savant 2.4.3                   =>  113.27 requests/s
Testing SmartTemplate 1.0.2            => skipped
Testing Smarty 2.6.13                  =>  108.47 requests/s
Testing Smarty Light 2.2.12            =>  143.82 requests/s


Dla wyjasnienia skad tyle wersji OPT:
Lite - wersja okrojona przez dolaczony konfigurator prawie z wszystkiego.
Performance - wersja z wlaczona opcja performance
Performance Lite - oba powyzsze

PS. Smarty cos blado wypada w tym towarzystwie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Bastion
post
Post #26





Grupa: Zarejestrowani
Postów: 505
Pomógł: 0
Dołączył: 8.01.2005

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


Ula la (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Panowie panowie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) zaskoczyliscie mnie tymi postami, zaczynam po malu myslec ze ktos z tego zacznie korzystac :] Wiesci dobre - wszystkie prosby zostana spelnione. Poniewaz wczesniejsze bugi nie sa takie tragiczne wydanie 1.6.1 zostaje przesuniete do 1.7.0

@FiDO : jak myslisz ? warto aplikowac dyrektywe performance ? Z tego co wychodzi z wynikow nic ona nie daje

Ten post edytował Bastion 2.05.2006, 08:46:20
Go to the top of the page
+Quote Post
Vomit
post
Post #27





Grupa: Zarejestrowani
Postów: 122
Pomógł: 0
Dołączył: 23.01.2006

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


Warto, warto, napewno jest wielu, ktorym to ulatwia prace.

Bastion, mysle, ze powinienes takze zwrocic uwage na ChameleonML, tak na dobra sprawe pierwsze rozszerzenie, nie stworone przez autora (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Mysle, ze moznaby to protected dac (IMG:http://forum.php.pl/style_emoticons/default/Rkingsmiley.png)
Go to the top of the page
+Quote Post
Bastion
post
Post #28





Grupa: Zarejestrowani
Postów: 505
Pomógł: 0
Dołączył: 8.01.2005

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


@Vomit : juz jest wsparcie dla MLa : http://www.vertis.com.pl/doc/doku.php?id=c...eLog#wersja_cvs (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

A dyrektywa performance w OPT , rowniez w moich testach nie wypada najlepiej ... odnosze wrazenie ze nic nie daje.

Ten post edytował Bastion 2.05.2006, 14:03:10
Go to the top of the page
+Quote Post
ajgon
post
Post #29





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.07.2005

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


Wyrok w postaci kolokwium zostal oddalony na przyszly poniedzialek - spodziewajcie sie wiec dzisiaj ChameleonML-rc1 ;]



---
Wielki Brat patrzy i widzi jak nabijasz posty.
~mike_mech


---
Wielki bracie, ilosc 5 w skali prawie roku jest faktycznie porazajaca ;]
@FiDO - zeby nie bylo, ze nabijam posty - tak, to ja (IMG:http://forum.php.pl/style_emoticons/default/cool.gif)
~ajgon


Ten post edytował ajgon 2.05.2006, 21:16:41
Go to the top of the page
+Quote Post
FiDO
post
Post #30





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Cytat(Bastion @ 2006-05-02 09:44:41)
@FiDO : jak myslisz ? warto aplikowac dyrektywe performance ? Z tego co wychodzi z wynikow nic ona nie daje

Mi nic do tego, to Twoj projekt i Ty decydujesz (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Moje subiektywne odczucie na chwile obecna jest takie, ze szkoda zachodu. Chociaz z drugiej strony wiele roboty to nie wymaga, jak bede mial czas to zobacze jak to sie ma do czasu wykonywania strony w jakims dzialajacym projekcie.

@ajgon: rozumiem, ze tej ajgon z tweak'a (aka purepc) to Ty ? :] to bylo pytanie retoryczne w sumie.. bo i tak kojarze Twojego av'a, no i miejsce zamieszkania sie zgadza ;]
Go to the top of the page
+Quote Post
ajgon
post
Post #31





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.07.2005

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


ChameleonML-r1
Pare slow (zawsze musi byc jakies ale) (IMG:http://forum.php.pl/style_emoticons/default/cool.gif)
- poprawiony ml.tmp (klasa juz sie nie komunikuje przez plik z klasa kompilera) - okupione to zostalo drobnymi poprawkami w konstruktorze Class5.chameleon_compiler.php:
  1. <?php
  2. public function __construct($tpl, $content = '') // linia 706
  3. {
  4. if ((!empty($tpl) && $this->template_source = file_get_contents($tpl)) || (!empty($content) && $this->template_source = $content))
  5. // reszta bez zmian
  6. }
  7. ?>

ktore rozwiazanie jest szybsze - pewnie obecne, ale zostawiam to maniakom testow wydajnosciowych ;]
- pojawily sie metody do ustawiania i wyciagania jezykow - dobrze z nich korzystac, przed setVar() i load(), aczkolwiek widze tu mozliwosci, zmieniania jezykow zmiennych w obrebie jednego dokumentu ;]
w zasadzie to chyba tyle, wielkiej filozofii nie ma, jak mi przyjdzie cos do glowy to jeszcze namieszam (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

edit: tak mi sie jeszcze nasunelo, w compilerze tez powinno byc (o ile jeszcze to nie zostalo zaimplementowane) class_exists('Debugger', false); oraz private=>protected (chociaz mi osobiscie nie trzeba, bo ML nie dziedziczy z kompilera)

Ten post edytował ajgon 2.05.2006, 22:55:38
Go to the top of the page
+Quote Post
ajgon
post
Post #32





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.07.2005

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


Zamierzam sie w niektorych moich projektach przerzucic na Chameleon (m.in. http://ajgon.webdate.pl/ ktore mnie blaga o przepisanie kodu juz od prawie roku ;]) i do tego niezbedna mi jest obsluga wielojezykowosci (uzaleznilem sie od SmartyML i bez tego jak bez reki (IMG:http://forum.php.pl/style_emoticons/default/cool.gif) ).
Go to the top of the page
+Quote Post
ajgon
post
Post #33





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.07.2005

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


Przyznam sie szczerze, ze od zawsze jechalem na smarty i nie zwracalem uwagi na inne rozwiazania, ale wczoraj przylecial do mnie toczek i wymachujac chameleonem przed oczami mowil - "Patrz! jakie fajne" (oczywiscie nie do konca tak bylo, ale drobne koloryzowanie nie zaszkodzi ;]). Ja tylko rzucilem okiem na testy wydajnosciowe - byl najwyzej, to wzialem w ciemno (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) No i teraz poprawiam go pod siebie (IMG:http://forum.php.pl/style_emoticons/default/aarambo.gif)
Poza tym, ja wymagajacy nie jestem - mi trzeba tylko szablony + jezyki, krawata wiazac i ciazy usuwac taki system nie musi ;] Pojawia sie jeszcze dobre ify i jak dla mnie bomba (IMG:http://forum.php.pl/style_emoticons/default/aaevil.gif) A ociezalosc Smartyego juz mi sie dawala we znaki.

Ten post edytował ajgon 2.05.2006, 23:00:42
Go to the top of the page
+Quote Post
ajgon
post
Post #34





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 25.07.2005

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


Jeszcze jeden burak sie wkradl do kodu, w linii 83 trzeba zmienic
  1. <?php
  2. $this->source_php = $this -> compile();
  3. ?>

na
  1. <?php
  2. $this->source_php = $compiler -> compile();
  3. ?>

poprawiona wersja jest juz na serwerze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
toczek
post
Post #35





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 20.06.2005
Skąd: krakow/rzeszow

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


haha, no moze to tak dokladnie nie bylo jak pisze ajgon (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) . Fakt faktem zastanawiamy sie nad uzyciem klasy w pewnym projekcie w ktorym bardzo zalezy nam na szybkosci dzialania i lekkosci kodu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) .
Go to the top of the page
+Quote Post
FiDO
post
Post #36





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


To znowu ja, Zły User (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Tym razem nie wywalilem Apacha, ale efekt w przegladarce mimo wszystko ciekawy i daleki od zamierzonego (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Reprodukcja: dwa szablony, jeden includuje drugi, a ten drugi pierwszy. To wersja najprostsza.. "po drodze" moze byc wiecej szablonow i w ktoryms z tych zaglebionych wystarczy zaincludowac jednego z juz zaincludowanych.

Bardziej skomplikowane warunki nie daja rady, przyklad:
{@if("test" == "test" && (test == 1 || 2 == 2))}
Go to the top of the page
+Quote Post
Bastion
post
Post #37





Grupa: Zarejestrowani
Postów: 505
Pomógł: 0
Dołączył: 8.01.2005

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


FiDO nie pozwalasz mi sie nudzic (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Oba zagadnienia dodane do Mantisa - beda rozwiazne w najblizszym czasie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Chyba tez poszukam ci bugoli w Mantisie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) co bys sie nie nudzil.
Go to the top of the page
+Quote Post
FiDO
post
Post #38





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Alez prosze bardzo, bede wdzieczny (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
luinnar
post
Post #39





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 15.07.2004
Skąd: Bielsko-Biała

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


Na prośbę Bastion-a.

Chameleon 1.7.1 released!!!

ChangeLog:
  • Zmiana licencji na GPL
  • Usunięto błędy
    • bug009 : błędne wykrywanie modyfikatora przy operatorze ‘or’
    • bug010 : dopuszczenie do reprodukcji szablonów
    • bug011 : zła interpretacja słów kluczowych w warunkach
    • bug012 : brak indeksowania listowanych zmiennych w warunkach if()


Ten post edytował luinnar 5.05.2006, 16:51:33
Go to the top of the page
+Quote Post
Bastion
post
Post #40





Grupa: Zarejestrowani
Postów: 505
Pomógł: 0
Dołączył: 8.01.2005

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


O (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) już działa.

Dzieku Luinnar (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

@FiDO : znalazlem buga w Nemesis, jednak zmiana zawartosci szablonu nie powoduje wygenerowania nowego kodu php.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 7.05.2026 - 13:12