有一些链接如下
https://example.com/cart.php
https://example.com/cart.php?gid=1
https://example.com/cart.php?gid=2
https://example.com/cart.php?a=view
https://example.com/cart.phpcart.php?a=confproduct&i=0
.......
我想在这些链接页面上添加一些文字。如何写if条件?
if($_SERVER['REQUEST_URI']=='/cart.php'||......)
有一种简单的方法吗?
答案 0 :(得分:2)
字符串比较怎么样?
$mystr = "https://example.com/cart.php";
if (0 != strncmp($_SERVER['REQUEST_URI'], $mystr, strlen($mystr)) { ... }
strncmp仅比较第一个 n 字符;我们通过strlen
传递了计数。
答案 1 :(得分:1)
将它们放在一个数组中,然后使用in_array()
。
$pages = array(
'/cart.php',
'/cart.php?gid=1',
'/cart.php?gid=2',
'/cart.php?a=view'
);
if(in_array($_SERVER['REQUEST_URI'], $pages)) {
// ...
}
答案 2 :(得分:1)
使用$_SERVER['PHP_SELF']
,如下所示:
if($_SERVER['PHP_SELF'] == "/cart.php"){
// do stuff
} elseif($_SERVER['PHP_SELF'] == "/anotherpage.php"){
// do other stuff
}
答案 3 :(得分:0)
如果您这样的链接不是太多,可以使用@zhuanzhou的方法。
否则,为什么不向uri添加新参数,例如
https://example.com/cart.php?rule=1
https://example.com/cart.php?gid=1&rule=1
https://example.com/cart.php?gid=2&rule=1
https://example.com/cart.php?a=view&rule=1
然后,您的代码可以是:
if($_GET['rule'] === 1){
// something here
}