是否有 if 语句允许我检查 URL 是否包含特定路径?
在我的特殊情况下(使用 wordpress(,我正在尝试检查 URL 是否包含/store/https://www.website.com.au/store/brand/所以在那条路之后可能会有一些东西...
感谢您的帮助!
我建议使用WordPress功能,如is_singular,is_tax等。
function get_current_url()
{
$pageURL = 'http';
if (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on") {
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "۸۰") {
$pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
}
return $pageURL;
}
$url = get_current_url();
if (strpos($url, '/store/') !== false) {
echo 'found';
}else{
echo 'not found';
}
如果您不想创建函数,这是我更简单的选项。
if( strpos( $_SERVER["REQUEST_URI"], "/store/" ) !== false ){ /* found */ }
使用strpos()
函数。 它基本上找到给定字符串中子字符串第一次出现的位置。如果未找到子字符串,则返回false
:
// input url string
$url = 'https://www.website.com.au/store/brand/';
$path_to_check_for = '/store/';
// check if /store/ is the url string
if ( strpos($url, $path_to_check_for) !== false ) {
// Url contains the desired path string
// your remaining code to do something in case path string is there
} else {
// Url does not contain the desired path string
// your remaining code to do something in case path string is not there
}