Не показывать это, если URL-адрес содержит следующее

У меня есть простой div, который я не хочу загружать, если посетитель загружает определенный URL.

Это выглядит так:

<?php if( stristr($_SERVER['PHP_SELF'], 'blog') == FALSE ) { echo "<div id="stuff"></div>"; } ?> 

Проблема в том, что … она не работает … когда я загружаю www.url.com/blog, материал div # все еще показывает.

Я просто не спал или должен работать выше? Что бы вы сделали, чтобы не отображать div, если url содержит блог?

Вместо этого попробуйте $_SERVER['REQUEST_URI'] :

 if (substr($_SERVER['REQUEST_URI'], 0, 5) !== '/blog') { echo '<div id="stuff"></div>'; } 

REQUEST_URI содержит запрошенный путь и запрос URI, а не только имя исполняемого скрипта, например PHP_SELF .

Версия OP работает для меня. Если вы исправите синтаксическую ошибку echo ().

 echo "<div id=\"stuff\"></div>"; 

проверено на PHP версии 5.2.9

попробуйте использовать оператор === в соответствии со вторым примером:

http://us2.php.net/manual/en/function.stristr.php