PHP:将特定波斯尼亚字符转换为非波斯语(utf8标准字符)

时间:2011-12-05 14:25:24

标签: php regex utf-8 special-characters string-conversion

在波斯尼亚,我们有以下仅在波斯尼亚和克罗地亚以拉丁语形式使用的字符,因此我需要将这些字母转换如下:

FROM | TO
  ć  | c
  č  | c
  ž  | z
  š  | s
  đ  | dj

如果可以通过一些特殊形式的RegEx或utf8_encode / decode来实现,那么这个信息和一个合适的例子将非常受欢迎!谢谢大家。

PS - 想在PHP中实现这一点!

2 个答案:

答案 0 :(得分:3)

你可以试试这个:

$search = array("ć", "č", "ž", "š", "đ");
$replacement = array("c", "c", "z", "s", "dj");
$new_string = str_replace($search, $replacement, $string);

另外,请查看str_replace

答案 1 :(得分:1)

您可以使用iconv。

$result = iconv("UTF-8", "ASCII//TRANSLIT", $text);

假设您的输入$text在utf-8中,那将会有效。如果它在latin-1中,那么使用

iconv("ISO-8859-1", "ASCII//TRANSLIT", $text);

因为您的PHP必须具有iconv扩展名,iconv文件中最常启用php.ini,但并非总是如此。