Zamiana znaków różnych języków na odpowiedniki angielskie

0

Witam
Otrzymuję w pewnym formularzu różne litery/znaki z całego świata. Czy jest jakaś funkcja, która przerobi wszystkie inne kodowania na utf8, a następnie wszystkie inne znaki zamieni na angielskie (np: ą=>a, ü=>u) , a jeśli nie będzie odpowiednika to zamieni na "-". Mógłbym to robić np. przez preg_match ale nie znam wszystkich znaków świata dlatego może jest jakaś funkcja do tego?
Z góry dziękuję za pomoc.

1
iconv('UTF-8', 'ASCII//IGNORE//TRANSLIT', "Žluťoučký kůň\n");
0

Dzięki za odpowiedź.
To jeszcze niestety nie działa tak jakbym chciał. Žluťoučký kůň\n zamienia na: luouk k</code>a dopiero satysfakcjonowało by mnie w 100% coś takiego: <code>Zlutoucky kun

1

Hm. Ustaw locale.

setlocale(LC_CTYPE, 'pl_PL');
echo iconv('UTF-8', 'ASCII//IGNORE//TRANSLIT', "Žluťoučký kůň\n");

u mnie zwraca: Zlutouck'y kun.

BTW: Coś takiego nie ogarnie Ci transliteracji cyrylicy, chińskich znaków itd. Transliterację cyrylicy znajdziesz w necie bez problemu, z chińskimi znakami to nie wiem ;]

1

Polecam zbiór funkcji formatujących z Wordpress /wp-includes/formatting.php https://github.com/WordPress/WordPress/blob/master/wp-includes/formatting.php

1 użytkowników online, w tym zalogowanych: 0, gości: 1