PHP - 如果 URL 包含字符串

oli*_*rbj 3 php

我正在尝试使用 PHP 检查用户是否在某些特定页面上。目前我是这样做的:

<?php if($_SERVER['REQUEST_URI'] == "/forum/"){echo "class='active'";} ?>
Run Code Online (Sandbox Code Playgroud)

虽然,这只适用于 URL 是 http://example.com/forum/

我怎样才能让上面的代码在 /forum/ 和 /forum/??

例子:

http://example.com/forum/anotherpage
Run Code Online (Sandbox Code Playgroud)

Nio*_*ols 5

您可以使用 a startswith function(请参阅此stackoverflow 帖子:PHP 中的startsWith() 和endsWith() 函数)。在这里,您测试将是:

if (startsWith ($_SERVER['REQUEST_URI'], '/forum/'))
Run Code Online (Sandbox Code Playgroud)

您还可以使用正则表达式:http : //php.net/manual/en/regex.examples.php。在这里,您的测试将是:

if (preg_match ('#^/forum/#', $_SERVER['REQUEST_URI']))
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。