Ik heb al een paar dagen in mijn hoofd om mijn eigen mini template engine te schrijven, dit omdat ik graag een guestbook wil maken die ik zo qua layout kan aanpassen zodat andere mensen er ook gebruik van kunnen maken
Nu heb ik het idee om het als volgt te doen...
mijn template ziet er als volgt uit
* template volledig uitlezen in een string bv $template
* een array gebruiken voor de te veranderen woorden dus van bv %title% naar "dit is mijn titel" en dit eerst in een soortement array dat ik gewoon kan adden met een functie bv addTemplateWord($template, "%title", "De vervangen regel"); oftewel de array ziet er dan zo uit --> %title% => "De vervangen regel"
* En dan als laatste functie een parseTemplate waarmee ik de template kan ombouwen en kan laten zien in bv 1x..
Help... welke php commando's kan ik het beste gebruiken..
Ik heb zelf al array een beetje uitgesplit maar dat wil niet echt werken... en kan jammer genoeg geen goede info vinden..
ben net tot deze code gekomen, mja dat is natuurlijk nog lange niet alles dat ik moet hebben!..
zo je wel kan zien een beginnetje
Nu heb ik het idee om het als volgt te doen...
mijn template ziet er als volgt uit
code:
1
2
3
4
5
6
7
| <html> <head> <title>%title%</title> <body background="%background%"> <p>Hallo dit is een test......%text%</p> </body> </html> |
* template volledig uitlezen in een string bv $template
* een array gebruiken voor de te veranderen woorden dus van bv %title% naar "dit is mijn titel" en dit eerst in een soortement array dat ik gewoon kan adden met een functie bv addTemplateWord($template, "%title", "De vervangen regel"); oftewel de array ziet er dan zo uit --> %title% => "De vervangen regel"
* En dan als laatste functie een parseTemplate waarmee ik de template kan ombouwen en kan laten zien in bv 1x..
Help... welke php commando's kan ik het beste gebruiken..
Ik heb zelf al array een beetje uitgesplit maar dat wil niet echt werken... en kan jammer genoeg geen goede info vinden..
ben net tot deze code gekomen, mja dat is natuurlijk nog lange niet alles dat ik moet hebben!..
PHP:
1
| <?function loadTemplate($name, $file) { // load Template file.... $template = fopen($file,"r"); $size = filesize($template); $name[template] = fgets($template, $size); return $name;}function parseTemplate($name) { return $name;}function parseRecord($name, $keyword, $replace) { for ($i = 0; $i <= count($name[words]); $i++) { if ($name[keyword][$i] == $keyword) { if ($name[replace][$i] != $replace) { $name[replace][$i] = $replace); $add = true; break; }else{ $add = true; break; } } if ($add != true) { $total = count($name[keyword]) +1; $name[keyword][$total] = $keyword); $name[replace][$total] = $replace); }}?> |
zo je wel kan zien een beginnetje