[PHP]: Bei der "file()" Funktion nach bestimmten Wörtern suchen...

topfklao

Christoph N.
ID: 118468
L
20 April 2006
885
17
Hi,


mal wieder eine kleine Frage von mir an euch..

Und zwar:

Ich möchte gerne eine beliebige Website auslesen (mit Filebefehl) und dann diese so entwickeln, dass nach bestimmten Wörtern dortdrin gesucht wird..

In meinem Beispiel nehmen wir mal die Wörter "internet", "geschichte" und "allerlei".

Zuerst mal denk ich müsste man den kompletten Array klein schreiben?
Dann nach den Wörtern suchen ob sie vorkommen; wenn ja alles ok ($ok=1) und wenn nein halt $ok=0 ausgeben...

Das wär wohl die Grundlage dafür:
PHP:
$html = implode ('', file ('https://www.dasinternet.net/'));
#in $html sollte nun nach den oben genannten Wörtern gesucht werden..
#echo $html;
 
Vorweg: implode('', file('...')) ist in meinen Augen ein absolutes NoGo. file_get_contents() macht exakt das Gleiche.

Aber zum eigentlichen Problem:

Du definierst die Suchwörter in einem Array und prüfst jeden Eintrag, ob er in dem vorliegenden String enthalten ist. Sieht dann etwa so aus:
PHP:
$needles = Array('internet', 'geschichte', 'allerlei');

$found = false;
while (!$found and !empty($needles)) {
  $needle = array_shift($needles);
  $found = stripos($html, $needle) !== false;
}
// Nun lässt sich durch $found überprüfen, ob der String einen der Begriffe enthält
 
Hi,
danke für deine schnelle Antwort!
Ich werds dannach gleich testen und schaun ob alles geht...

Bis dahin bin ich natürlich für weitere Ideen offen^^