String per file_get_contents kopieren und ausgeben

bensky

Erfahrenes Mitglied
hi leute,
ich möchte gerne die Beschreibtung von einer externen Seite auslesen, aber dies funktioniert leider nicht, wo hab ich hier mal wieder den denkfehler?

Danke ;)

PHP:
<?
$website  = "http://www.autohaus-wenner.de/index.htm";
$website  = file_get_contents($website);
$startpos = 0;

//echo $website;

$start_text = '<META NAME="description" CONTENT="';
$end_text   = '">';

while($pos = strpos($website, $start_text, $startpos))
{
   echo $pos."<BR>";
   $string = substr($website, $pos, strpos($website, $end_text, $pos + 1) - $pos);
   echo $string."</br>";
   $startpos = $pos + 1;
}
?>
 
Hi,

bin mir nicht sicher, ob ich Dein Problem richtig verstanden habe.
Ich hab's mal so umgeschrieben:

PHP:
<?
$website  = "http://www.autohaus-wenner.de/index.htm";
$website  = file_get_contents($website);
$startpos = 0;

//echo $website;

$start_text = '<META NAME="description" CONTENT="';
$end_text   = '">';

while($pos = strpos($website, $start_text, $startpos))
{
   $pos += strlen($start_text); // <- das ist neu
   echo $pos."<BR>";
   $string = substr($website, $pos, strpos($website, $end_text, $pos + 1) - $pos);
   echo $string."</br>";
   $startpos = $pos + 1;
}
?>

Die Ausgabe sieht jetzt so aus:

Code:
266<BR>Neuwagen, Gebrauchtwagen, Jahreswagen, Vermietung, alles bei Autohaus - Wenner GmbH in Werne</br>

Gruß
joschi
 
Hi danke erstmal, funktioniert wunderbar, ich check nur nicht warum?
Was macht das $pos += strlen($start_text); ?
 
Hi bensky,

die pos Voriable hat die Position vom Anfang der Zeichenkette '<META NAME="description" CONTENT="'.
Du willst ja aber erst nach dem Anführungszeichen anfangen den String auszuschneiden. Deshalb wird zu pos noch die Länge der Zeichenkette addiert.

Gruß
joschi
 
:) jau, hab ich nach 10 minuten üb erlegen auch rausgefunden...;(
Dank dir herzlich für die hilfe ;)
gruß ben
 
Zurück