[php] Überprüfen, ob Tags wieder geschlossen wurden

Dieses Thema [php] Überprüfen, ob Tags wieder geschlossen wurden im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von Cledith, 6. Mai 2004.

Thema: [php] Überprüfen, ob Tags wieder geschlossen wurden Sagt mal Mädels und Jugens, angenommen ich habe einen String $text = <strong>Hallo</strong> Wie geht es...

  1. Sagt mal Mädels und Jugens,
    angenommen ich habe einen String
    Code:
    $text = <strong>Hallo</strong> Wie geht es <i>dir?
    
    Vielleicht sieht man das Problem schon. Das <i> wurde nicht wieder geschlossen, was ja nun fatale konsequenzen haben kann.

    Daher formuliert sich meine Frage wie folgend:
    Wie kann ich überprüfen, ob ein Anwender ein Tag wieder geschlossen hat (bzw. alle Tags wieder geschlossen hat)? Mir mangelt es an Ideen. Das Problem liegt im Moment jedoch noch nicht bei der Umsetzung, sondern überhaupt erstmal beim Konzept.

    Für Hilfe wäre ich dankbar!
     
  2. Wie wäre es mit einem Stack?
    Solange öffnende Tags gefunden werden => lege Tag auf den Stack
    Wird ein schliessender Tag gefunden, vergleiche diesen mit dem letzten öffnenden Tag auf dem Stack
    Passen die Tags zusammen, nimm den Tag vom Stack, ansonsten Fehler
    Wenn keine schliessenden Tags mehr vorhanden und Stack nicht leer, dann fehlt eben was ;)
    Nachteil bei dieser Version, Tags, die über Kreuz schliessen, werden nicht erkannt. Ist IMHO aber auch kein sauberer Programmierstil.

    Eddie
     
  3. Zu aller Ehrlichkeit muss ich zugeben, dass ich nicht ein Wort verstanden habe :( *malebennachles*

    Hm, ok, das hört sich so an, als ob das klappen kann.
    Und wie geht das??? ;D

    Eben habe ich noch was zum Thema gefunden, auf das ich ja nun dann eigentlich hin will:
    Eine Klasse (die aber auch nicht richtig funktioniert) von Christian Seiler zum BB Code (wenn auch nicht dafür, aber das Prinzip möchte ich benutzen), nur muss ich auch dazu gestehen, dass ich doch eher wenig davon verstehe...

    Also habe ich gerade beschlossen, dass ich das mal eben verwerfen werde und erstmal langsam einsteigen werde ;D

    Hast du denn nen paar Links für mich, in denen man langsam daran herangeführt wird?
    Also z.B. an Programmierung mit Klassen, Stacks, OOP und so weiter in PHP?
     
  4. Hi

    Also unser Informatikdozent würde jetzt sagen, dass ist eine kontextfreie Sprache ;D.

    Vorgehensweise:
    Du brauchst quasi eine Zählvariable die die Position im String angibt.
    < gefunden und kein / danach, solange vorgehen bis > kommt
    array[] = substr(pos1, pos2)
    if (< gefunden und kein / danach, solange vorgehen bis > kommt) {
    array[] = substr(pos1, pos2)
    // auf stack legen
    } else if (array_pop() == substr(pos1, pos2) {
    // von stack nehmen
    } else {
    echo fehler beim parsen
    }

    Gruß, Michael
     
  5. 'tschuldige die späte Antwort, bin vorher nicht zu gekommen.
    Das Prinzip habe ich verstanden.

    Aber hat evtl. doch noch mal jemand nen paar Links für mich, in denen man langsam an Programmierung mit Klassenund OOP und so weiter in PHP herangeführt wird?
     
  6. Wunderbar. Danke.
     
Die Seite wird geladen...

[php] Überprüfen, ob Tags wieder geschlossen wurden - Ähnliche Themen

Forum Datum
[php] Quelltext einer Website nach Wort durchsuchen und Aktion durchführen Windows XP Forum 28. Mai 2013
[PHP] Bild in Intervallen wechseln Webentwicklung, Hosting & Programmierung 28. Nov. 2012
[PHP] Was steckt in der MySQL result-resource? Webentwicklung, Hosting & Programmierung 21. März 2008
[php] Windows Anmeldung Webentwicklung, Hosting & Programmierung 11. Dez. 2006
[PHP] Verbotene Funktionen im SAFE MODE -> Workarround Webentwicklung, Hosting & Programmierung 16. Feb. 2006