Tom: Den <title> einer anderen Seite auslesen

Beitrag lesen

Hello,

Sieht dann so aus:

ist fast richtig

Position 1

function get_title($page)
{

#> if(!$pos1=stripos($page, "<title>")){
  if(false!==($pos1=stripos($page, "<title>")))
  {

return false;
}

Position 2

if(false!==(!$pos2=stripos($page, "</title>")))

{

return false;
}

if ($pos1 > $pos2) return false;

Titel auslesen

$title = substr($page,$pos1+7,$pos2-$pos1);

return $title;
}

stripos() liefert 0, wenn der String ganz am Anfang erkannt wurde.
bei einem einfachen Vergleich == mit false würde bei PHP auch 0 == false sein
Wenn die Stringsuche aber tatsächlich false zurückliefert, dann kannst Du das mit dem Identitätsvergleich "false === stripos()" abfragen. Nur dann wurde kein String gefunden.

Das "return false" hat natürlich nur einen Sinn, wenn Du es in einer Funktion aufrufst.

Wenn es ganz gut werden soll, dann musst Du natürlich auch noch feststellen, ob $pos1 < $pos2 ist. Wer weiß schon, was der HTML-Künstler der fremden $page da zusammengeschreiben hat.

Wie man sieht, geht es beim <title>-Tag ganz ohne Regulat Expressions, weil der i.d.R. ohne Attribute steht, die gesuchten Zeichenketten damit also genau bekannt sind.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de