XHTML-Element auslesen

Hallo!
Die Lösung meiner Frage ist wahrscheinlich sehr simpel, aber stelle sie trotzdem mal:

Wie kann ich ein XHTML-Element mit PHP auslesen und in einer PHP-Variablen speichern? Also wenn ich z.B.

 test 

habe, möchte ich „test“ in

$readh1

ablegen und später über

echo $readh1;

ausgeben.

Gruß
Stefan

Klar kannst du das :smile:
Wenns ne grössere Sache wird nimmst du irgendeinen PHP-XML-Parser, ansonsten reichen auch simple reguläre Ausdrücke:

preg_match("= (.*) =siU",$text); -> http://www.dclp-faq.de/q/q-regexp-grosser-text.html

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

hallo!

preg_match("= (.*) =siU",$text); ->
http://www.dclp-faq.de/q/q-regexp-grosser-text.html

mhm, irgendwie bekomme ich es nicht hin…
es geht konkret um diese seite: http://www.latein-pauker.de/

ich möchte jeweils die überschrift aus dem dynamisch in den bekommen. das problem ist nur, dass ich den logischerweise in head.inc hab und eben in der index.php.

XHTML-Element auslesen (bitte Hilfe)
hallo!
kann mir keiner helfen?
danke!

Also zunächst einmal, du kannst nicht zuerst das schreiben und dann den Titel. Du kannst den Titel höchstens hinterher ändern. ist aber nicht sehr elegant.

Wenn du den Text mit den … Tags als string($text), dann kannst du tatsächlich folgendes machen:
preg_match("/ (.*) /",$text,$match);
dann steht in $match[1] dein Titel drin!
Eleganter ist es, wenn du weisst, dass nur Buchstaben im Titel vorkommen:
preg_match("# ([a-zA-Z]*) #",$text,$match);
hoffe, geholfen zu haben.

islaminhannover.de

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

hallo oman!
also, ich versuche nochmal, mein problem zu erläutern:

ich habe den in der datei head.inc stehen.
diese datei wird per include() in die index.php eingelesen.
in der index.php ist das element vorhanden.
dieses element will ich in den , der ja in der head.inc steht, dynamisch rein bekommen, so dass auf der seite „impressum“ beispielsweise der „Latein-Pauker.de => Impressum“ heißt, weil ja "Impressum auch das ist.

nun hab ich ein problem mit der logik, denn wie kann in head.inc auf etwas zugreifen (nämlich das ), das beim parsen des dokuments noch unbekannt ist, da der head.inc ja vor der index.php gelesen wird?

ich hoffe, ihr habt mein problem nun verstanden.
gruß
stefan

ich habe den in der datei head.inc stehen.
diese datei wird per include() in die index.php eingelesen.
in der index.php ist das element vorhanden.
dieses element will ich in den , der
ja in der head.inc steht, dynamisch rein bekommen, so dass auf
der seite „impressum“ beispielsweise der
Latein-Pauker.de => Impressum“ heißt, weil ja "Impressum
auch das ist.

nun hab ich ein problem mit der logik, denn wie kann in
head.inc auf etwas zugreifen (nämlich das ), das
beim parsen des dokuments noch unbekannt ist, da der head.inc
ja vor der index.php gelesen wird?

hi stefan, ok hatte dein problem wirklich falsch verstanden!

es gibt 2 Möglichkeiten:

  1. Du gibst nichts in head.inc aus. d.h. es sieht so aus:

head.inc

$title="Latein-Pauker.de => ";

andere Variablen usw…

insgesamt $header1 alles VOR dem Titel

$header2 für alles NACH dem Titel.

?>

index.php

include(‚head.inc‘);

#…
$mytitle=„impressum“;
echo $header1.$title.$mytitle.$header2;
#…
?>
Das ist nicht sehr elegant!
2. Möglichkeit: du setzt die nötigen Variablen schon vor dem Aufruf von header.inc!
Also:

index.php

$mytitle=„impressum“;

andere Variablen, die du für den Header brauchst

include(‚head.inc‘);

weiter mit dem Inhalt der Seite

?>

head.inc

Anfang.

echo "Latein-Pauker.de => „.$mytitle.“;

weitermachen

?>

Mit dieser Methode wird das auch meist gemacht-> empfehlenswert.
Übrigens nur nebenbei: nicht mit .inc benennen!! Denn so kann jeder *theoretisch* sich deinen Code ansehen. Also immer mit der Endung .php. Wenn du mehr Übersicht haben willst, kannst du auch mit .inc.php benennen.

hoffe, das hilft!

islaminhannover.de

hallo omar (sorry hatte mich bei dem anderen beitrag vertippt)!

also so klappt es. ich befürchte, ich habe (mal wieder) viel zu kompliziert gedacht, oft ist die lösung ja einfacher, als man denkt :wink:

danke nochmal!

gruß
stefan