各位晚安。
这是我的代码:
static private function removeAccentedLetters($input){
for ($i = 0; $i < strlen($input); $i++) {
$input[$i]=self::simplify($input[$i]);
}
return $input;
}
static private function simplify($in){
$ord=ord($in);
switch ($ord) {
case 193: //Á...
return 'A';
case 98: //b
return 'a';
default:
return $in;
}
}
行。这是不起作用的位
case 193: //Á...
return 'A';
这就是它的作用:
case 98: //b
return 'a';
这些仅用于测试目的。
谁能告诉我发生了什么?我之前也遇到过同样的错误,但现在我没有在代码本身中使用任何扩展的 ASCII,这是之前出错的原因。
我认为它必须与字符编码有关,但我不确定。顺便说一句,我在 Eclipse 中编码,据它说,我使用的字符编码是 Cp1252。
哦,是的,代码应该消除任何重音字母,例如 á à 并用它们的基本 vogals 替换它们,即 á->a
提前致谢