У меня с трудом удаляются диакритики от некоторых $string
. Мой кодstrtr действующий странный - удаление диакритических знаков из строки
<?php
$string = "Příliš žluťoučký kůň úpěl ďábelské ódy.";
$without_diacritics = strTr($string, "říšžťčýůúěďó", "risztcyuuedo");
echo $without_diacritics;
в то время как ожидаемый результат будет Prilis zlutoucky kun upel dabelske ody.
Вместо этого, я получаю очень странный ответ:
Puiszliuc uuluueoudoks� ku�u� s�pd�l d�scbelsks� s�dy.
Я думал, что это может быть проблема с мульти- байтовые символы, но я обнаружил, что strtr
является многобайтовым. Я ошибаюсь в своем предположении? Что мне не хватает?
[Это] (http://stackoverflow.com/a/3635607/2518525) может быть (использование функции) или [это] (http://stackoverflow.com/a/1770306/2518525). – Darren
Или [это] (http://stackoverflow.com/questions/2758736/multibyte-strtr-mb-strtr) ("multibyte strtr() -> mb_strtr()") – Matmarbon
Спасибо за ваши предложения, я решу использовать один из них наверняка, но я все еще с нетерпением жду, чтобы узнать, почему мой код не работает должным образом. –