preg_match funktioniert nicht

Guten Tag,

mein Code:
[PHP]<?php error_reporting(E_ALL); echo $line = file_get_contents('http://www.downforeveryoneorjustme.com/'.$_GET['check']); if (preg_match("/\bhere.\b/i", $line)){ print "Down :(";} else {print "Up :)";} ?>[/PHP]
(file_get_contents lasse ich mir nur ausgeben, um zu überprüfen, was die Seite anzeigt!)

Grundidee: ich rufe mypage.com/check.php?check=anotherwebsite.com auf und mir wird angezeigt, ob die Seite online oder offline ist. Gibt die Seite bei file_get_contents einen Satz mit here. aus, ist die Seite offline. Wenn nicht, ist die Seite online.
Probiert es doch mal aus:
http://www.downforeveryoneorjustme.com/google.com → Up
http://www.downforeveryoneorjustme.com/gugofo.com → Down

Was passiert: Egal was file_get_contents ausgibt, es wird immer Up :slight_smile: ausgegeben. Keine Fehler werden ausgegeben.

Wahrscheinlich habe ich einen relativ einfachen und dummen Fehler gemacht, vielen Dank schonmal für die Hilfe!

Es reicht doch, wenn du überprüfst, ob in $line überhaupt etwas steht. Wenn der Server down ist, kann file_get_contents ja nichts liefern.

Nein, das geht leider nicht.
downforeveryoneorjustme.com ist ja eine Seite, die überprüft ob eine Seite online ist oder nicht.

Insgesamt geht es aber garnicht genau um diese Seite - obwohl ich es gerade hier brauche - sondern insgesamt als Codeschnipsel, den ich mir notieren will.
Warum funktioniert preg_match nicht?

warum testest du nicht einfach auf

[php]if (strstr($content, ‚It's not just you!‘) === false) { echo ‚online‘; } else { echo ''offine; }[/php]

preg_match für das matchen eines einfachen strings ist total unnötig.

Wie soll ich das sonst umsetzen? :slight_smile: