Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Subsekcje w szablonach
Rudi1204
post
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 2
Dołączył: 11.03.2007

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


Witam w php siedzę jakiś czas, ale mimo to nie ogarniam do końca sprawy klas, a to do pisania silnika szablonów chyba jest podstawa no nie??

Mianowicie już jakiś czas temu znalazłem na stronie museum.webcity.pl artykuł jak stworzyć własny mechanizm szablonów. Całkiem niezły i przyjazny, ale na dłuższą metę jemu coś brakuje no właśnie "subsekcji". Zabrałem się za to ale patrząc na to ze kuleje z klas rozłożyłem na końcu ręce.

Na forum znalazłem takie coś
plik index.php
  1. <?php
  2. $tablica['{$div}'] = 'to jest div';
  3. $tablica['{$p}'] = 'to jest p';
  4.  
  5.  
  6. $html = file_get_contents('./tpl/main_index.html');
  7.  
  8.  
  9. foreach($tablica as $nazwa=>$wartosc)
  10. {
  11.  $html = str_replace($nazwa,$wartosc,$html);
  12. }
  13.  
  14. echo $html;
  15. ?>


plik main_index.html
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  4. <title>Untitled Document</title>
  5. </head>
  6. <body>
  7. <div style="border:1px solid red; padding:5px;">
  8. {$div}
  9. </div>
  10. <ul>
  11. <!-- test -->
  12. <li><p style="border:1px solid blue; padding:5px;">{$p}</p></li>
  13. <!-- /test -->
  14. </ul>
  15. </body>
  16. </html>


Starałem się jakoś dojść do tego jak podmieniać zakres od <!-- test --> do <!-- /test --> i wrzucić to w pętle by zrobić listing ale nie udało mi się. Jedyne do czego doszłem to jak zmienić cały zakres a mianowicie poprzez dodanie przed pętla takiego czegoś:
  1. <?php
  2. $html = preg_replace("/<!-- test -->.*?<!-- /test -->/si", '<hr />', $html);
  3. ?>


Czy ma ktoś może jakieś propozycje, porady etc... jak to ugryźć??

Ten post edytował Rudi1204 12.04.2009, 10:50:53
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Systemy takie jak smarty czy opt komplikują szablon na php co daje ci ten sam efekt co stosowanie php.
Czyli idac twoim rozumowanie nie oplaca sie korzystac z jezykow wysokiego poziomu bo one i tak komilują kod na niski poziom.... piszmy wiec wszyscy w assemblerze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Co cie obchodzi co robi system szablonow? No bardzo dobrze ze zamienia to na php, dzieki temu nie musi za kazdym razem kompilowac.

Nie mowie ze jestem zwolennikiem szablonow lub nie. Poprostu twoja argumentacja jest dosc dziwna (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

Posty w temacie


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: 13.10.2025 - 23:49