phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?_RE:_=5Bphp=5D_Rekursive_Regul=E4re__Ausdr=FCcke ?=

[php] RE: [php] Rekursive Reguläre Ausdrücke

Nikolai Onken php_(at)_phpcenter.de
Tue, 23 Jul 2002 21:45:36 +0200


>Wäre nett wenn Du mir den Code wirklich mal mailen könntest, oder
>irgenwo kurzzeitig zum download anbieten ...

Hey,

sorry das ich mich noch nicht gemeldet habe…
Den Parser gibt’s hier:
http://www.chordinversion.com/parser/mod_parse.inc.phps
Die SQL-routine muss man ändern, damit es klappt.
Während des Scriptdurchlaufes werden alle Parseablen (oder wie man das
nennt) Variablen in einem Globalen array (tagname=>wert)
Gespeichert – so kann man z.B. dynamisch auf den Benutzernamen
zugreifen.
Alle anderen Dinge wie z.B. Contenteinbindung und Plugins werden über
die Funktion load_tag_functions() in ein Array geladen.
Diese lädt alle existierenden Funktionen (name => funktion) aus einer
Datenbank – das mache ich so, weil dadurch leicht Plugins eingebunden
werden können.
Wenn dann z.B. das Tag folgendermaßen aussieht:
<gcms:insertVar value=“username“/>
dann wird erst load_tag_functions() aufgerufen, die zugehörige Funktion
in ein Array („insertVar“=>“insert_var“) gesteckt, welches beim parsen
überprüft wird.
Wenn also insertVar vorkommt, dann wird die Funtion
insert_var($arr_values) aufgerufen (mit den im Tag überreichten Werten)
Insert_var überprüft dann das Globale Array nach „username“ und Gibt den
Wert zurück.
Wenn ich <gcms:insertContent id=“23232“/> dann wird einfach eine
function insert_content($arr_values) aufgerufen und dann wird der Inhalt
zurückgegeben.
Mein Parser hat auch Cache Funktion, das ist aber nicht in dieser Datei
– und ist auch noch nicht sehr ausgereift…
Wenn irgendwas nicht klar ist :) dann helfe ich gerne!
Ich würde mich aber auch freuen, wenn jemand Verbesserungsvorschläge und
schlechten Code findet oder was auch immer...
Gruß,

Nikolai
---
http://www.chordinversion.com


php::bar PHP Wiki   -   Listenarchive