Community

9dots.de Webdesign Board

 

 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 

 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 


[Snippet] Templateklasse

 
Neues Thema eröffnen   Neue Antwort erstellen    9dots.de Webdesign Community Foren-Übersicht -> Coding-Tutorials
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Impi
Mitglied
Mitglied


Angemeldet: 06.05.2006
Beiträge: 530


BeitragVerfasst am: 26.08.2006, 11:07    Titel: [Snippet] Templateklasse Antworten mit Zitat
So, ich habe hier mal wieder ein super Klasse für euch in meiner Trickkiste gefunden Smilie.

Die Klasse filtert den Inhalt der angegebenen Datei auf Keywords die in einem Array bestimmt sind und ersetzt den Wert der Platzhalter entweder durch einen Text oder den Inhalt einer Datei.

So sieht die Klasse aus:

Code:

<?PHP
class template{
   #Klassenvariablen
   var $strFilename = "";
   var $arrayValues = array ();
   var $strTPL = "";   
   #Ende
   
   #Konstrunktor
   function template($path,$filename,$values){
   // Inhalt der zu parsenden Templatedatei wird in $tpl gespeichert und die HTML-Atribute
   // an den Pfad zum $filename angepasst.
   $tpl = implode ("",file($path.$filename));
   $tpl = preg_replace ("=background\=\"(?!http)(.*?)\"=si","background=\"".$path."\\1\"", $tpl);
   $tpl = preg_replace ("=src\=\"(?!http)(.*?)\"=si","src=\"".$path."\\1\"", $tpl);

   // &Uuml;bermittelte Werte werden den Klassenvariablen zugewiesen
   $this->strTPL = $tpl;
   $this->strFilename = $filename;
   $this->arrayValues = $values;   
   }   
   #Ende

   // Function die den neuen Text/HTML-Code als Return zur&uuml;ck gibt
   function startParsing(){
   // Jeder Eintrag der $arrayValues array(); wird durch die kommende Schleife gejagt
   foreach ($this->arrayValues as $value_1 => $value_2) {
   
      if(file_exists($value_2)){      // Wenn der 2te Spaltenwert von $arrayValues eine Datei ist und existiert ...
      ob_start();            // Wird ein Puffer f&uuml;r die Ausgabe initialisiert ...
      include ($value_2);         // Die Datei in den Puffer includiert ...
      $value_2 = ob_get_contents();   // $value_2 bekommt ihren den Wert der ehemaligen Datei die in $value_2 verzeichnet war
      ob_end_clean();         // Und der Puffer wird wieder geschlossen und aufger&auml;umt
      };
      // Der Inhalt von $value_2 wird auf runde Klammern durchsucht und durch das passende HTML-Tag ersetzt
      $value_2 = str_replace ('{', "{", $value_2);
      $value_2 = str_replace ('}', "}", $value_2);
      // Die Klassenvariable mit dem Inhalt der Templatedatei wird erneuert bzw. der Platzhalter { .$value_1. } mit dem passenden Wert der zu includierenden Datei $value_2 ersetzt
      $this->strTPL = str_replace ('{' . $value_1 . '}', $value_2, $this->strTPL);
      }
      // Neuer Text/HTML-Code wird ausgegeben
      return $this->strTPL;
   }

   function killTemplate(){
   unset($this->strFilename);
   unset($this->arrayValues);
   unset($this->strTPL);
   }
};
?>


Wie immer ist alles kommentiert. Bei Fragen zu Klassen: [url=http://forum.9dots.de/viewtopic.php?t=3000]Guckst du hier ...[/url

Und so findet die Klasse verwendung:
Code:

<?PHP
// Die Klasse wird includiert
include("class_template.php");
// Die zu ersetzenden Werte werden bestimmt
$values = array (
'title'   => 'Titel',
'text'      => 'text.txt',
'hello'   => 'Hello World'
);
// Das Object $tpl wird mit der Klasse Template initialisiert
$tpl = new template("templates/","index.tpl", $values);
// Das Dokument wird geparst und ausgegeben
echo $tpl->startParsing();
// Der Dekonstruktor wird gestartet und das Object aus dem Speicher gel&ouml;scht
$tpl->killTemplate();
unset($tpl);
?>


Die zu ersetzende Datei liegt im Ordner "templates" und heisst "index.tpl".
Folgender HTML-Code ist enthalten:
Code:

<html>
<head>
      <title>{title}</title>
</head>
<body>
{hello}<br>
{text}
</body>
</html>


Die Ausgabe sieht dann so aus:
Code:

<html>
<head>
      <title>Titel</title>
</head>
<body>
Hello World<br>
Hier steht dann der Text!
</body>
</html>


Alle Dateien sind nochmal hier zu sehen: http://sevenstudios.info/files/SNIPPETS/PHP/KLASSEN/TEMPLATE/

Impi

P.S.: Die Platzhalter müssen im HTML-Code immer in {} Klammern stehen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
jeje222
Mitglied
Mitglied


Angemeldet: 19.09.2018
Beiträge: 111


BeitragVerfasst am: 19.09.2018, 04:04    Titel: Re: [&#35342;&#35542;]&#23470;&#24311;&# Antworten mit Zitat
ugg outlet
ugg boots
pandora charms
dsquared2
[url=http://www.basketballshoes.us.org ]basketballl shoes[/url]
salomon shoes
kate spade outlet
ralph lauren polo
christian louboutin
coach factory outlet
christian louboutin outlet
canada goose outlet
ray ban sunglasses
adidas yeezy
canada goose
clarks shoes
red bottom shoes
coach outlet
coach factory outlet
fitflops clearance
longchamp
[url=http://www.coachoutletonlinestore.eu.com ]coach outlet[/url]
kate spade outlet
ralph lauren polo
moncler jackets
tod's outlet
[url=http://www.eccoshoesoutlet.us ]ecco shoes[/url]
ugg boots clearance
moncler outlet
louboutin shoes
canada goose outlet
louboutin shoes
fitflops clearance
ray ban sunglasses
ugg boots
moncler outlet
coach outlet
air max 90
coach outlet
valentino shoes
michael kors outlet
coach outlet
coach factory outlet
ralph lauren uk
lacoste polo
canada goose outlet
north face
supreme clothing
jordan shoes
canada goose outlet
fitflops clearance
ray ban sunglasses
prada handbags
clarks outlet
ralph lauren polo
ray ban sunglasses
salomon shoes
superdry uk
mlb jerseys
jordan 4
hermes belt
[url=http://www.edhardyuk.me.uk ]ed hardy uk[/url]
ugg outlet
ugg outlet clearance
ugg outlet
soccer shoes
christian louboutin
[url=http://www.airjordanuk.org.uk ]jordan uk[/url]
champion clothing
hugo boss
true religion jeans
canada goose outlet
christian louboutin shoes
michael kors outlet
off white shoes
christian louboutin outlet
canada goose outlet
oakley sunglasses
off white outlet
coach outlet
kate spade
true religion jeans
kate spade outlet
coach outlet
nike tn
jordan 8
true religion
michael kors outlet
nike shoes
air max 90
canada goose jacket
golden goose
ferragamo shoes
tory burch outlet
jordans
north face
canada goose jackets
christian louboutin outlet
pandora outlet
supreme clothing
christian louboutin shoes
christian louboutin outlet
true religion
coach outlet
nike outlet
coach outlet
adidas nmd
[url=http://www.hugobosssale.name ]hugo boss[/url]
true religion jeans outlet
nike blazers
christian louboutin
ugg boots clearance
coach outlet factory
longchamp outlet
dsquared2
coach factory outlet
canadian goose
champion sportswear
christian louboutin outlet
red bottom shoes
golden goose
nike outlet factory
mbt shoes
ralph lauren polo
mbt shoes
michael kors outlet
issey miyake
adidas outlet
asics shoes
nhl jersey
nike air max
golden goose
ugg boots outlet
prada shoes
ralph lauren polo
giuseppe zanotti
coach outlet online
ugg boots
longchamp outlet
canada goose outlet
pandora charms
ralph lauren polo
coach handbags
off white jordan
coach outlet
true religion jeans
ecco shoes
ugg outlet boots
kate spade outlet
nike shoes outlet
jordan shoes
nike shoes
ralph lauren polo
clarks shoes
christian louboutin outlet
[url=http://www.reebokoutlets.in.net ]reebok outlet[/url]
canada goose
red bottom shoes
michael kors outlet
coach outlet
bottega veneta
pandora charms
louboutin shoes
supreme
nike shoes
[url=http://www.conversetrainer.org.uk ]converse trainer[/url]
moncler jackets
moncler outlet
clarks outlet
moncler outlet
skechers shoes
nike shoes
canada goose outlet
coach outlet online
vibram five fingers
manolo blahnik
kate spade handbags
moncler jacket
coach outlet
pandora charms
ralph lauren polo
pandora jewelry
[url=http://www.fitflopssale-clearance.us.com ]fitflops clearance[/url]
coach outlet
pandora jewelry
coach outlet
ralph lauren uk
off white clothing
true religion jeans outlet
pandora jewelry
golden goose
ultra boost 3.0
coach outlet online
[url=http://www.jordan-shoes.us.org ]jordan shoes[/url]
jordan shoes
canada goose
jordans
ralph lauren uk
pandora outlet
christian louboutin
kate spade outlet
hermes belt
ugg outlet
adidas shoes
coach outlet online
ferragamo belt
coach outlet
pandora outlet
nike huarache
adidas yeezy
pandora
adidas superstar
canada goose outlet
canada goose outlet
nike shoes
yeezy boots 350
ray ban sunglasses
ralph lauren
moncler outlet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
clibin009
Mitglied
Mitglied


Angemeldet: 14.05.2018
Beiträge: 955


BeitragVerfasst am: 29.10.2018, 10:17    Titel: Antworten mit Zitat
aktienkurse adidas
adidas canada
adidas
adidas outlet
adidas
adidas
adidas online
adidas outlet
nike air huarache
nike huaraches
cheap jordans
jordans
air max
nike air max 2014
air max 2015
nike Air Max Plaza
max shoes
armani shoes outlet
asics shoes outlet
asics gel
michael kors
uggs outlet
babyliss pro
barbour jackets
barbour jackets
barbour outlet online
cheap barbour jackets
barbour jackets
basketball shoes
bcbg max azria
bcbg max
beats by dr dre
beats audio
belstaff jackets
belstaff sale
belstaff jackets outlet
veneta
bottega veneta
burberry handbags outlet
burberry sale
burberry sale
burberry
burberry
burberry sale
burberry handbags
burberry sale
burberry outlet
burberry outlet online
burberry handbags
burberry outlet store
calvin klein underwear
michael kors canada
c.c beanies
iphone 5 cases
cheap jerseys
jerseys from china
air jordans
juicy couture
michael kors purses
cheap mlb jerseys
mont blanc
cheap nhl jerseys
ray ban sunglasses outlet
discount shoes
timberland shoes
replica rolex
chi hair
red bottom shoes
christian louboutin shoes
red bottoms
christian louboutin shoes
louboutin
louboutin outlet
louboutin outlet
chrome hearts store
coach handbags outlet
coach bags
coach factory online
coach handbags
coach sacs
coach outlet
coach outlet canada
coach outlet online
coach store outlet
coach purses factory
coach outlet online
coach outlet usa
coach store online
converse sneakers
converse
converse shoes
converse
swarovski crystal
dansko outlet
handbags outlet
dsquared2 outlet
dsquared2 jeans
ecco outlet online
ed hardy
cheap glasses
fendi bags
salvatore ferragamo
salvatore ferragamo
ferragamo shoes
fidget spinner
fitflop outlet
fred perry outlet
fred perry uk
guess clothings outlet
giuseppe zanotti sneakers
giuseppe shoes
givenchy handbags
guciheaven women shoes
guess outlet online
beats by dr dre
hermes birkin bag
hermes bags
hermes
hogan
hogan women shoes
hugo boss clothes
jack wolfskin jackets
jack wolfskin outlet
true religion jeans women
nba jerseys
cheap jerseys
swarovski jewelry
jimmy choo outlet
jimmy choo shoes
jordan
air jordan shoes
juicy couture outlet
katespade
katespade
kate spade outlet online
kate spade outlet online
lacoste outlet online
lacoste outlet
levi's jeans
levis jeans
links of london watches
longchamp
longchamp
long champ
longchamp outlet
longchamp handbags
christian louboutin
baseball bats
marc jacobs
marc jacobs
mbt mens shoes
mcm handbags
mcm bags
mcm handbags
mcm bags
mcm handbags outlet
michael kors taschen
michael kors
michael kors purses
michael kors handbags
michael kors uk
michael kors outlet
michael kors handbags
cheap michael kors
michael kors handbags
michael kors outlet
michael kors
michael kors
michael kors bags
michael kors uk
michael kors outlet
mizuno wave
mizuno running
michael kors outlet
michael kors handbags
michael kors bags
cheap mlb jerseys
moncler jackets
moncler jackets outlet
montblanc
nba jerseys
nfl jerseys
kobe bryant shoes
new balance canada
new balance outlet
new balance
new balance shoes
new balance
ipad mini cases
cheap jerseys
cheap nhl jerseys
air force
huarache
air max
nike air max
air max
air max
nike air max 2014
nike air max
air max 90
nike air max
nike air yeezy
nike outlet
nike free run 5.0
nike roshe
free run
nike free
nike free run
nike shoes
air max one
nike mercurial
roshe runs
nike roche run
roshe run
jordans
nike.com
nike
tn pas cher
nike air force
nike
nike canada
nike
nike outlet
nike air huarache
cheap nike shoes
nike
nike
north face
oakley vault
lunette oakley
oakley
occhiali oakley
cheap oakley sunglasses
oakley sunglasses
oakley sunglasses
oakley vault
oakley sunglasses
cheap oakley sunglasses
oakley
oakley canada
cheap oakley sunglasses
oakley sunglasses outlet
cheap oakley
oakley sunglasses outlet
asics
michael kors
michael kors purses
prada sunglasses
prada handbags
puma sneakers
ralph lauren factory store
hilfiger outlet
tory burch shoes
tory burch handbags
tory burch outlet
true religion
true religion outlet
pandora charms
pandora
pandora
pandora schmuck
pandora jewelry
pandora jewelry
parajumpers mens jackets
philipp plein clothing
plein outlet
polo ralph lauren outlet
ralph lauren online shop
ralph lauren uk
polo ralph lauren
polo ralph lauren outlet online
ralph lauren outlet online
prada outlet
prada
prada shoes
puma online
ralph lauren polos
ralph lauren
ralph lauren
ralph lauren polo
ralph lauren
ralph lauren outlet online
ralph lauren online
polo ralph
ralph lauren outlet
ralph lauren outlet
ralph lauren polos
polo ralph lauren
ralph lauren
lunette ray ban
ray ban
ray ban sonnenbrillen
ray ban wayfarer
ray ban
occhiali ray ban
ray ban
ray ban outlet online
ray ban
ray ban sunglasses outlet
ray-ban sunglasses
ray bans
ray bans
ray ban outlet
cheap ray ban
ray ban outlet
reebok
reebok shoes outlet
knockoff handbags
designer handbags
ugg
uggs
ugg boots
ugg australia
air jordan retro
ralph lauren outlet online
nike roshe
roshe
Sac Hermes
salomon
ferragamo
ferragamo shoes
hogan outlet
skechers
skechers mens shoes
skechers shoes outlet
nike mercurial
soccer shoes
indoor soccer shoes
stone island outlet
eyeglasses stores
supra footwear
supra shoes
swarovski canada
swarovski jewelry
swarovski online
north face
north face jackets
north face backpacks
north face
the north face
the north face outlet
north face outlet
northface
thomas sabo charms
thomas sabo
timberland boots
chaussure timberland
timberland outlet
tods outlet online
tommy hilfiger
tommy hilfiger
tommy hilfiger
tommy hilfiger
hilfiger online shop
hilfiger outlet
tory burch handbags
cheap true religion
true religion jeans men
cheap true religion
ugg
uggs on sale
fossil uhren
under armour
under armour shoes outlet
stephen curry shoes
vans
vans
vans shoes outlet
vans shoes
versace clothes
versace shoes outlet
five finger shoes
woolrich mens jackets
coach store
coach outlet sale
coach factory outlet online
michael kors
cheap nba jerseys
nba jersey
golden state warriors jerseys
san antonio spurs jersey
jordan jerseys
cavaliers jerseys
dwyane wade jersey
kobe bryant jerseys
clippers jersey
knicks jersey
boston celtics
brooklyn nets jersey
kevin durant jersey
rockets jersey
kings jersey
philadelphia 76ers jerseys
atlanta hawks jersey
pacers jersey
bucks jersey
new orleans pelicans
denver nuggets jersey
phoenix suns
nba jersey
dallas mavericks jerseys
charlotte hornets jerseys
grizzlies jersey
timberwolves jersey
orlando magic jersey
trail blazers jersey
raptors jersey
jazz jersey
wizards jersey
nfl jerseys
49ers nfl jersey
azcardinals nfl jersey
bears nfl jersey
bengals nfl jersey
bills nfl jersey
broncos nfl jersey
browns nfl jersey
buccaneers nfl jersey
chargers nfl jersey
chiefs nfl jersey
colts nfl jersey
cowboys nfl jersey
dolphins nfl jersey
eagles nfl jersey
falcons nfl jersey
giants nfl jersey
jaguars nfl jersey
jets nfl jersey
lions nfl jersey
packers nfl jersey
panthers nfl jersey
patriots nfl jersey
raiders nfl jersey
rams nfl jersey
ravens nfl jersey
redskins nfl jersey
saints nfl jersey
seahawks nfl jersey
steelers nfl jersey
texans nfl jersey
titans nfl jersey
vikings nfl jersey
cc20181028
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    9dots.de Webdesign Community Foren-Übersicht -> Coding-Tutorials Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

Board Software by phpBB © 2001, 2005 phpBB Group. Impressum
Dominik Wuttke - Moritz Münchmeyer - Joachim Nagel GbR.
AGB