Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Problem z parsowaniem
Tajgeer
post 7.02.2010, 17:20:25
Post #1





Grupa: Zarejestrowani
Postów: 290
Pomógł: 48
Dołączył: 11.05.2008
Skąd: Kielce

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


Witam,

Od jakiegoś czasu piszę własnego CMS.

Napisałem taki oto system szablonów:
http://wklej.org/id/275489/

Tak wygląda index.php
http://wklej.org/id/275490/

A tak wygląda index.tpl
http://wklej.org/id/275493/

Problem polega w tym, że o ile tą "zmienną" na końcu (plik index.tpl) parsuje bez problemu (tzn. zamienia na wartość z tablicy), o tyle już w pętli for nie bardzo. Zamiast podmienionej wartości wyświetla się zmienna, która normalnie jest przed podmienieniem.

Dodam jeszcze, że jeśli w template.class.php zakomentuje funkcję eval() na samym końcu - w źródle pojawia się poprawny kod PHP, który przynajmniej powinien się wykonać poprawnie.

Wiem też, że większość na pewno wyśmieje mój sposób "programowania" (bo chyba nie można nawet nazwać tego programowaniem), ale cały czas się uczę smile.gif

I teraz moje pytanie - jak mogę zmodyfikować / poprawić mój skrypt, aby poprawnie podmieniał on odpowiedni ciąg (ten w pętli for) na wartość?

Ewentualnie czy mógłby mi ktoś polecić jakiś prosty system szablonów, w którym będzie przedstawione sposób, w jaki parsowane są dane z tablicy dwuwymiarowej?

Ten post edytował Tajgeer 7.02.2010, 19:16:56
Go to the top of the page
+Quote Post
Pilsener
post 8.02.2010, 09:47:54
Post #2





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


1. Stawiam na wyrażenie regularne w pregu, potestuj je na tej pętli.
2. Nikt Ciebie nie wyśmieje, ale po jakiego grzyba tworzyć nowy pseudojęzyk, który tylko mocno spowolni stronę i utrudni jej edycję? Lepiej użyć czegoś znanego (jak Smarty) lub bardzo prostego. I nie możesz też dodawać zmiennych do szablonu jedną metodą? Co za problem rozpoznać, czy jest to tablica? I co się stanie, jeśli chcę dodać do szablonu kolejną tablicę?
Go to the top of the page
+Quote Post
Tajgeer
post 8.02.2010, 17:59:36
Post #3





Grupa: Zarejestrowani
Postów: 290
Pomógł: 48
Dołączył: 11.05.2008
Skąd: Kielce

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


Ad 1.
Dzięki za radę, potestuję i zobaczę co z tego wyjdzie.

Ad 2.
Chciałem stworzyć własny system szablonów, ze względu na to, że większość dostępnych gotowych rozwiązań posiada albo zbyt dużo funkcji, albo jest dosyć ciężka w zaimplementowaniu.
Druga sprawa tyczy się Smarty - kiedy ja się "bawiłem" razem z tym systemem, posiadał dosyć stare rozwiązania (to było jeszcze w dobie dominacji PHP 4). Czy wg. Ciebie projekt (jako, że widziałem, że jest ponownie rozwijany) może z powodzeniem zostać zaimplementowany do mojego CMS'a?

Podsumowując moje wypociny, sprawdzę jak wygląda obecnie sprawa ze Smarty i jeśli okaże się, że sprosta moim oczekiwaniom - na pewno z niego skorzystam. Chciałbym tylko dodatkowo zaspokoić swoją ciekawość odnośnie pierwszego pytania, bo nigdy się z podobną sytuacją nie spotkałem, a chciałbym wiedzieć co robić, aby zapobiec ewentualnym podobnym problemom w przyszłości.

Pozdrawiam i jeszcze raz dziękuje za rady.

Ten post edytował Tajgeer 8.02.2010, 18:01:52
Go to the top of the page
+Quote Post
gothye
post 9.02.2010, 20:42:12
Post #4





Grupa: Zarejestrowani
Postów: 702
Pomógł: 65
Dołączył: 16.03.2009

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


Smarty spełni Twoje oczekiwania ,zwłaszcza nowa wersja  (jeszcze opisana jako testowa ) 3.0 jet świetnie rozwiązana ,i z tego co widze w porównianiu do starszej wersji 2.6 jest szybsza exclamation.gif!


--------------------
Nie udzielam pomocy poprzez PW
Go to the top of the page
+Quote Post

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 - 09:52