"substr" Liefert nicht korrektes Ergebnis

ahykes

Erfahrenes Mitglied
Tach Jungs,

Warum liefert mir dieser Ausdruck :
PHP:
$content =  substr($content,strpos($content, '<meta'),strpos($content, '</head>'));

Dieses Ergebnis : (?)
Code:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Toll</title>
<meta name="description" content="Immer wieder">
<meta name="keywords" content="Nix">
<meta name="author" content="ich">
<meta name="language" content="fr">
<meta http-equiv="content-language" content="fr">
<meta name="robots" content="noindex,nofollow">
<title>Unbenanntes Dokument</title>
<link href="site-style.css" rel="stylesheet" type="text/css">
</head>

<body><center><table width="500" border="0" cellspacing="0" cellpaddin
Was mich stört? Nunja sollte er mir nicht alles zwischen "<meta" und "</head>" anzeigen
 
Hi,

meines Wissens bestimmt der zweite Parameter von substr die Länge der Zeichenkette und nicht das Ende des Snippets. Du musst also die Position des ersten "<meta" noch subtrahieren.

Gruß
.
 
Sehr gut! Genauso. Habe das mal etwas übersichtlicher gemacht:

PHP:
	 $a = strpos($content, '<meta');
	 $b = strpos($content, '</head>');
	 $b = $b - $a;	
	 $content =  substr($content,$a,$b);
	 echo $content;

Dankeschön!
 
Zurück