我正在尝试根据我网站的根网址显示div标签,即如果网址是dev.foo.com显示div,否则www.foo.com不会显示等等。我已经出现了用这个
<?php if (substr($_SERVER['REQUEST_URI'], 0, 5) !== 'dev.') {
echo '<div class="dev-site-stuff">THIS IS THE DEV SITE!!</div>';
}
?>
但它没有用,我看不出原因 - 任何想法都非常感激!
答案 0 :(得分:6)
你应该使用$_SERVER['SERVER_NAME']
如果您有任何其他疑问,只需执行print_r($_SERVER);
即可实际查看阵列的组成方式
答案 1 :(得分:1)
除了上面的@ yes123回答,你还将长度为5的子字符串与长度为4的字符串进行比较,因此它永远不会成立。
你可以像这样使用strrpos
if (strrpos($_SERVER['SERVER_NAME'], 'dev.') > 0) {
希望这有帮助。
答案 2 :(得分:1)
$url = explode('.', $_SERVER['HTTP_HOST'], 2);
/* you might want pretty variable that exactly gets the subdomain.
* $subdomain = $url[0] != "www" ? $url[0] : "";
* if($subdomain == "dev") {
* // dev site...
* }else if($subdomain == "") {
* // www site...
* }
*/
if($url[0] == "dev") {
echo '<div class="dev-site-stuff">THIS IS THE DEV SITE!!</div>';
}
在这种情况下,substr,strpos等并不总是有效的。这很好吗?
编辑:顺便读一下你的问题的评论。