如果URL包含已定义的域名,则显示HTML,否则显示其他内容

时间:2014-12-12 18:05:46

标签: php

我正在构建一个可以在不同站点上使用的管理面板。如果网址包含特定域名,我需要显示一些特定的HTML,如果不包含其他内容,则需要显示其他内容。

所以,如果URL是这样的http://(某事).mydomain.com / admin ....我想展示一些HTML。

如果网址类似于此http:// anotherdomain.com/admin ...我想展示其他内容。

Í已经尝试了this,但不知何故没有得到这个。我究竟做错了什么?

编辑:错误的代码。请参阅下面的代码......

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

抱歉:发错了php代码。我觉得有点太累了......

这是我搞砸的那个:

<?php
    if (substr($_SERVER['SERVER_NAME']) !== 'mydomain.com') {
        echo '<div id="stuff">test</div>';
    }
?>

4 个答案:

答案 0 :(得分:0)

尝试使用该代码:

if(preg_match(string $ pattern,string $ subject)){}

http://php.net/manual/de/function.preg-match.php

答案 1 :(得分:0)

http://php.net/substr

您当前的子记录是“如果请求URI的前5个字符不是/mydomain.com,请打印下面的内容。”

您可以尝试以某种方式正确执行此操作。您可以使用strpos并检查mydomain.com是否出现在请求URI中,或者查看更复杂的regex以查找(mydomain)。

答案 2 :(得分:0)

为$ _SERVER [&#39; SERVER_NAME&#39;]更改$ _SERVER [&#39; REQUEST_URI&#39;]如果mydomain.com是您的域名。

此外,substr返回5个字符,你正在与13个字符进行比较

答案 3 :(得分:0)

请尝试以下代码

<?php 

$url_segments = parse_url("http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]");

if (strpos($url_segments['host'],'mydomain.com') !== false) {
    echo 'true';
}else{
    echo 'false';
}

?>

谢谢,