PHP: Convierta caracteres bosnios específicos a no bosnio (chars estándar de UTF8)
-
28-10-2019 - |
Pregunta
En Bosnia tenemos los siguientes caracteres que solo se usan en forma latina en Bosnia y Croacia, por lo que necesitaría convertir estas letras como siguientes:
FROM | TO
ć | c
č | c
ž | z
š | s
đ | dj
Si esto es posible con alguna forma especial de regex, o utf8_encode/decode, ¡esa información y un ejemplo apropiado serán bienvenidos! Gracias a todos.
PD: ¡quiero lograr esto en PHP!
Solución
Puedes usar esto con Iconv.
$result = iconv("UTF-8", "ASCII//TRANSLIT", $text);
Que funcionará suponiendo su aporte $text
está en UTF-8. Si está en Latin-1, entonces use
iconv("ISO-8859-1", "ASCII//TRANSLIT", $text);
De porque tu PHP debe tener iconv
extensión, con mayor frecuencia iconv
está habilitado en php.ini
archivo, pero no siempre.
Otros consejos
Puedes probar esto:
$search = array("ć", "č", "ž", "š", "đ");
$replacement = array("c", "c", "z", "s", "dj");
$new_string = str_replace($search, $replacement, $string);
Además, mira str_replace
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow