我stripos
用来修改一个活动的导航类,
<?php if (stripos($_SERVER['REQUEST_URI'],'/members/login') !== false) {echo 'class="active"';} ?>
它就像一个魅力。但是我需要添加另一个REQUEST_URI
来检查字符串,并且无法弄清楚如何正确格式化代码。
我努力了:
, '/members/login | /members/members'
和其他没有成功的人。
你只需要做两次:
if(
stripos($_SERVER['REQUEST_URI'],'/members/login') === 0
||
stripos($_SERVER['REQUEST_URI'],'/members/members') === 0){ ...
请注意,===0
我假设您不希望 '/someotherpartofyoursite/members/members' 匹配,所以我切换到了。如果您希望在 1 次调用中使用它,您可以使用正则表达式(请参阅 参考资料preg_match()
),但在我看来,这已经足够快速和清晰了。
如果列表变得更长,这取决于这些是否是整个路径,如果是,这样的东西可能更合适:
$urls = array('/members/login','/members/members');
if(in_array(parse_url($_SERVER['HTTP_REQUEST_URI'], PHP_URL_PATH),$urls)){....
...但不知道您的 url 方案这是一个猜测。
您可以像这样在一次调用preg_match中做到这一点:
if (preg_match('#/members/(?:login|members)#i', $_SERVER['REQUEST_URI'])) {
// matched
}