VAriable an HTML übertragen
P.K.
- php
Sehr geehrte Community,
ich bin schon eien ganze Weile aufd er suche wie ich bsp. eine variable "b"
an eine html übertragen kann. Allerdings ohne html in die php datei direkt
einzubinden.
Mit Freundlichen Grüßen P.K.
Hallo,
echo b;
Ich versteh aber Deine Frage nicht so ganz. Was heisst HTML nicht in die php Datei einbinden?
Moechtest Du nicht, dass dein php HTML generiert und trotzdem eine php Variable in deinem nicht generiertem HTML?
Also ich habe die Variable
$test
Dort ist jetzt als Inhalt eien Zahl, die ich nun in html ausgeben. Allerdings defakto ist, das die php und html in zwei Dateien getrennt sein sollen.
Also ich habe die Variable
$test
Dort ist jetzt als Inhalt eien Zahl, die ich nun in html ausgeben. Allerdings defakto ist, das die php und html in zwei Dateien getrennt sein sollen.
trennung von programmierung und struktur - das klassische prinzip einer templateengine ;)
deine html datei (template) muss an irgend einer stelle eine markierung haben, die auszeichnet, wo die variable $test (zb der inhalt) zu stehen hat - sagen wir "/////TEST/////" oder "###TEST###" oder "<!-- MARKER:TEST -->" ode auch "{{TEST}}"
dein php-script öffnet die template-datei und ersetzt alle marker durch inhalt - also eine der oben genannte varianten durch eine variable mit dem selben namen - danach wird der inhalt ausgeliefert
wenn du soetwas nicht selbst programmieren willst, gibts die dinger schon fertig wie sand am meer - die verbreitetste ist afaik "smarty"
viele content-management-systeme liefern eine templateengine mit - typo3 zb
Ich versuche mal so ein wenig Revou passieren zu lassen.
Also müsste ich mit einer PHP Datei den Inhalt saugen und die stellen die bsp. mit {test} gekenzeichnet sind besonders sondern.
Allerdings frage ich mich wie ich die gesonderten Stellen auslesen kann bzw. sagen kann das er die Wörter mit {} raus filtert?
Also müsste ich mit einer PHP Datei den Inhalt saugen und die stellen die bsp. mit {test} gekenzeichnet sind besonders sondern.
Allerdings frage ich mich wie ich die gesonderten Stellen auslesen kann bzw. sagen kann das er die Wörter mit {} raus filtert?
mit einer funktion, die inhalte ersetzen kann - entweder eine einfache string-replace-funktion (str_replace) wenn dir die namen der marker bekannt sind oder bei dynamischen markern mit einem regulären ausdruck, preg_replace() bietet sich hier an
wenn du weisst, dass deine marker z.B. {{{MARKERNAME}}} heisst musst du also nur stringteile suche, die mit {{{ beginnen, dann die zeichen A-Z behinalten (du definierst zb, dass marker immer in großbuchstaben geschriebn sein müssen) und dann wieder mit }}} abschliessen
alternativ kannst du auch mal pauschal alle marker suchen (preg_match_all) und später parsen
---
für den anfang sollte aber folgende vorgehensweise am besten funktionieren:
marker mit dynamischen namen usw kannst du dir später ansehen, wenn du das geschafft hast - überschlag dich nicht gleich mit komplexen dingen
file_get_contents() und str_replace() sollten die funktionen deiner wahl sein
Hallo P.K.
Also müsste ich mit einer PHP Datei den Inhalt saugen und die stellen die bsp. mit {test} gekenzeichnet sind besonders sondern.
Allerdings frage ich mich wie ich die gesonderten Stellen auslesen kann bzw. sagen kann das er die Wörter mit {} raus filtert?
Schau dir dazu mal folgende Seiten an:
- file_get_contents
- str_replace
- ereg_replace
Da steht alles drin, was du für eine solche Aufgabe brauchst!
Lg Niko
wie ich schon erwähnte: preg_replace ist "kostengünstiger" (perl-kompatible reguläre ausdrücke sind schneller, syntaktisch einfacher zu verstehen, verbreiteter und umfangreicher als die regulären ausdruckfunktionen mit e-präfix, welche posix-kompatibel sind)
in der php-doku wird das leider nur als 1-zeiler-tipp am rande erwähnt, dass die preg-funktion "häufig" die schnellere alternative ist
Hello,
zum Thema "Templates" gibt es eine Thread aus den letzen Tagen mit Erich, aber der ist nicht mehr da.
Ich hate versucht, zuminest die Ergebnisse hier nochmals zu Posten, aber das lässt die "Geschwätzigkeitsprüfung" des Forums nicht zu...
Also warte noch ein paar tage, bis der Thread wieder verfügbar ist und verlinkt werden kann ;-)
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
Hello,
Also warte noch ein paar tage, bis der Thread wieder verfügbar ist und verlinkt werden kann ;-)
Ich habe es mal auf http://selfhtml.bitworks.de/templates/Beschreibung.txt hochgeladen, obwohl es noch nicht überarbeitet ist.
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
Hello,
Also warte noch ein paar tage, bis der Thread wieder verfügbar ist und verlinkt werden kann ;-)
Ich habe es mal auf http://selfhtml.bitworks.de/templates/Beschreibung.txt hochgeladen, obwohl es noch nicht überarbeitet ist.
Nun ist auch der Thread im Archiv angekommen:
http://forum.de.selfhtml.org/archiv/2008/8/t175925/#m1159112
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg