Nabend alle zusammen,
Ich versuche mich gerade mit Expressions etc... aber um ehrlich zu sein ... das bleibt mir schon seit Jahren ein Rätsel, wie man da durchblickt und hoffe hier einfach auf Hilfe. Ich möchte innerhalb eines Textes per einem bestimmten String angeben, dass er mir aus einem bestimmten Verzeichnis einfach alle Bilder als kleine Galerie(also den HTML Code dazu) ausgibt.
Beispiel mit einem Lorem-Text:
"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, {#GALLERY|abc|Die ABC Galerie|Dies ist eine kleine Testgalerie#} sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, {#GALLERY|gal2|Neue Galerie 2|Noch eine kleine Testgalerie#} sed diam voluptua."
Die Idee ist, diese strings {#....#} zu ersetzen, und zwar anhand ihrer durch die | getrennten Strings. In dem Fall sollen die Parameter für folgendes gelten:
"GALLERY" = Typ-Parameter, damit der Parser weiß, was hier für Inhalt eingefügt werden soll. (um später vielleicht auch um andere Ideen erweitern zu können - also wie ne Art Switch innerhalb der Klasse)
"abc" = Name des Galerie-Verzeichnisses
"Die ABC Galerie" = Headline der Galerie ( also die Bezeichnung, die mit ausgegeben werden soll )
"Dies ist eine kleine Testgalerie" = Kurze Beschreibung ( die auch mit ausgegeben werden soll )
Mein erster Versuch der Regex:
Das ist meine derzeitige Ausgabe von dem , was er findet.
Also mein erstes Problem ist wie man sieht wohl die Expression, die nach {#....#} suchen soll.
Und mein zweites Problem wäre hier direkt im Nachgang..... wenn ich den String korrekt rausfiltern konnte und für meine Aktionen verarbeitet bekomme und von mir aus auch wieder einen erzeugten HTML Code in der Hand hätte,.... wie bekomme ich den wieder an die Stelle im Text-String eingefügt, wo er genau den dazu passenden String auch gefunden hat?
Wäre echt genial, wenn ihr mir hier helfen könnt.
Gruß Mario
Ich versuche mich gerade mit Expressions etc... aber um ehrlich zu sein ... das bleibt mir schon seit Jahren ein Rätsel, wie man da durchblickt und hoffe hier einfach auf Hilfe. Ich möchte innerhalb eines Textes per einem bestimmten String angeben, dass er mir aus einem bestimmten Verzeichnis einfach alle Bilder als kleine Galerie(also den HTML Code dazu) ausgibt.
Beispiel mit einem Lorem-Text:
"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, {#GALLERY|abc|Die ABC Galerie|Dies ist eine kleine Testgalerie#} sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, {#GALLERY|gal2|Neue Galerie 2|Noch eine kleine Testgalerie#} sed diam voluptua."
Die Idee ist, diese strings {#....#} zu ersetzen, und zwar anhand ihrer durch die | getrennten Strings. In dem Fall sollen die Parameter für folgendes gelten:
"GALLERY" = Typ-Parameter, damit der Parser weiß, was hier für Inhalt eingefügt werden soll. (um später vielleicht auch um andere Ideen erweitern zu können - also wie ne Art Switch innerhalb der Klasse)
"abc" = Name des Galerie-Verzeichnisses
"Die ABC Galerie" = Headline der Galerie ( also die Bezeichnung, die mit ausgegeben werden soll )
"Dies ist eine kleine Testgalerie" = Kurze Beschreibung ( die auch mit ausgegeben werden soll )
Mein erster Versuch der Regex:
PHP-Code:
// $content ist der gesamte Textliche Inhalt einer Seite
preg_match_all( "#.*\{\#(.*)\#}#U", $content, $output );
PHP-Code:
Array
(
[0] => Array
(
[0] => Lorem ipsum dolor sit amet, consetetur sadipscing elitr, {#GALLERY|abc|Die ABC Galerie|Dies ist eine kleine Testgalerie#}
[1] => sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, {#GALLERY|gal2|Neue Galerie 2|Noch eine kleine Testgalerie#}
)
[1] => Array
(
[0] => GALLERY|abc|Die ABC Galerie|Dies ist eine kleine Testgalerie
[1] => GALLERY|gal2|Neue Galerie 2|Noch eine kleine Testgalerie
)
)
Und mein zweites Problem wäre hier direkt im Nachgang..... wenn ich den String korrekt rausfiltern konnte und für meine Aktionen verarbeitet bekomme und von mir aus auch wieder einen erzeugten HTML Code in der Hand hätte,.... wie bekomme ich den wieder an die Stelle im Text-String eingefügt, wo er genau den dazu passenden String auch gefunden hat?
Wäre echt genial, wenn ihr mir hier helfen könnt.
Gruß Mario
