来自URL的php特殊字符(umlaute)
我对utf8、ansi和ascii的东西很生气。一直都是老故事 我有一个包含GET参数的url: 在我的PHP脚本中,我做了一个切换:来自URL的php特殊字符(umlaute),php,utf-8,Php,Utf 8,我对utf8、ansi和ascii的东西很生气。一直都是老故事 我有一个包含GET参数的url: 在我的PHP脚本中,我做了一个切换: switch ( strtolower( $country ) ) { case "deutschland": $country = "DE"; break; case "österreich": $country = "AT"; break; case "schweiz": $country = "CH
switch ( strtolower( $country ) ) {
case "deutschland":
$country = "DE";
break;
case "österreich":
$country = "AT";
break;
case "schweiz":
$country = "CH";
break;
default:
$country = "DE";
break;
}
对于Östereich,我得到默认值“DE”。那么如何解决这个问题呢?您需要使用多字节函数来管理UTF8字符串,所以mb_strtolower()而不是strtolower()您需要使用多字节函数来管理UTF8字符串,所以mb_strtolower()而不是strtolower()使用
osterreich
instad ofösterreich
。并从URL传递相同的内容。是否使用urlencode()函数?尝试使用var_dump(strtolower($country)),这样您就可以看到您正在处理的输出。这是一个很好的机会,可以提到使用osterreich
安装osterreich
。并从URL传递相同的内容。是否使用urlencode()函数?尝试var_dump(strtolower($country)),这样您就可以看到您正在处理的输出。这是一个值得一提的好机会