检查数组值是否包含浏览器国家/地区代码



如果德语是浏览器语言之一,我试图显示登录页德语版本的链接,但我遇到的问题是数组在一个值中返回所有语言。如何检查该值是否包含某些字母?这是我正在使用的代码和我看到的返回:

$langarray = array(substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,100));
if(in_array('de', $langarray)){
$showdelink = '<a style="color: #004f5d;" href="/de/">View the DE homepage</a>';
}

我收到以下退货:

Array ( [0] => en-US,en;q=0.9,de;q=0.8 )

因此,我所面临的问题是;de";,但确实包含";de";,因此不显示该链接。我该如何检查";de";在返回值内。谢谢

您可以使用strpos作为

if(strpos($langarray[0], "de") !== false) {
$showdelink = '<a style="color: #004f5d;" href="/de/">View the DE homepage</a>';
}

相关内容

最新更新