Zu allererst $_SERVER['REQUEST_URI']
finden Sie die URI geben, die in Auftrag gegeben wurde, auf diese Seite zuzugreifen, nicht die tatsächliche Seitennamen. Verwenden Sie basename($_SERVER['PHP_SELF'])
, um den tatsächlichen Seitenname abzurufen.
Und zweitens ist der Zustand Ihrer if
Klausel auch falsch. Von the manual of stripos()
function:
:
Gibt die Position zurück, wo die Nadel relativ zum Beginn der Heuhaufenkette existiert (unabhängig vom Offset). Beachten Sie auch, dass die Zeichenfolgenpositionen bei 0 und nicht bei 1 beginnen.
Gibt FALSE zurück, wenn die Nadel nicht gefunden wurde.
So werden beide Bedingungen fehlschlagen, wenn die Nadel genau mit dem Heuhaufen übereinstimmt. Stattdessen überprüfen Sie den Zustand wie folgt aus:
if(stripos($haystack, $needle) !== false || stripos(stripos($haystack, $needle)) !== false) {
echo 'hello';
}
So die Lösung ist wie folgt:
if(stripos(basename($_SERVER['PHP_SELF']), 'user.php') !== false || stripos(basename($_SERVER['PHP_SELF']), 'message.php') !== false) {
echo 'hello';
}
Sie Ihre Antwort erklären sollte und nicht nur einen Code-Block geben. – Machavity