用其表音相似字符替换特殊字符(在 php - utf8 中)

发布于 2024-11-05 13:39:08 字数 545 浏览 0 评论 0原文

您知道有很多字符,例如 è 或 é。还有更多,比如 ö,ä,ì,á,ù,...

我想用它的“pheneticpartner”字符替换这些字符,但我不想像

str_replace(array("á", "à", "é", "è", ...), array("a", "a", "e", "e", ...), &$input);

那里 那样对每个字符都这样做任何常见的方式来做这样的事情:

str_replace_phoenetical(&$input)
  • 还有人写剧本吗 涵盖所有情况?
  • 有没有办法自动 检测这些字符,然后 删除`或'?

到目前为止谢谢

更新:

有人推荐这个(在 php.net 上找到)

you know that there are many characters like è or é. There are many more, like ö,ä,ì,á,ù,...

i want to replace those characters with its "phoenetic partner"-character, but i don't want to do it for each single character like

str_replace(array("á", "à", "é", "è", ...), array("a", "a", "e", "e", ...), &$input);

is there any common way to do something like:

str_replace_phoenetical(&$input)
  • has anybody still wirtten a script
    which covers all cases?
  • is there a way to automaticly
    detect those characters and just
    remove the ` or '?

thanks so far

UPDATE:

does anyone reccomands this one (found on php.net)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

沐歌 2024-11-12 13:39:08

您可以使用 iconv() 音译它们。

$str = 'áàéè';

$transliterated = iconv('UTF-8', 'ASCII//TRANSLIT', $str);

var_dump($transliterated); // string(4) "aaee"

Ideone

You can transliterate them with iconv().

$str = 'áàéè';

$transliterated = iconv('UTF-8', 'ASCII//TRANSLIT', $str);

var_dump($transliterated); // string(4) "aaee"

Ideone.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文