1

我只想在 url 包含某些参数时显示内容。在判断URL是否存在的情况下,例如参数?offset=10。如果参数存在 (site.com/post-name?offset=10) 则显示内容 X,否则显示内容 Y。

例如:

function parameterUrl() {
$str = "?offset=10";
$uri = $_SERVER['REQUEST_URI']; 
if ($uri == "http://site.com/post-name$str") {
echo "Show this";
}
 else {
}
} 

但上述功能不起作用。任何人都可以帮忙。欢迎任何想法。谢谢你。

4

2 回答 2

1

您的参数存储在$_GET全局数组中。

你需要:

if (isset($_GET['offset']) && $_GET['offset'] == 10)
{
echo "show this";
}
else {
echo "show that";
}

从评论更新

如果您要拥有多个数量,那么 switch 语句会更好:

if (isset($_GET['offset']))
{
    switch($_GET['offset'])
    {
        case 10:
            echo "show for 10";
        break;

        case 20:
            echo "show for 20";
        break;

        case 30:
            echo "show for 30;
        break;
//and so on
    }
}
else {
echo "show for no offset";
}
于 2012-09-08T08:28:41.597 回答
0

$_GET检查是否设置了关联数组中的适当键。

isset($_GET['offset'])

因此,在您的代码中,它将是:

<?php 
function parameterUrl() {
  if (isset($_GET['offset'])) {
    echo "Show this";
  }
  else {
  }
} 
?>

(可选)如果它需要等于 10,请使用(isset($_GET['offset']) && $_GET['offset'] == 10).

于 2012-09-08T08:29:42.157 回答