Как избавиться от неанглийских букв в строке? - PullRequest
0 голосов
/ 10 мая 2011

Я хочу избавиться от турецких символов с английскими в строке, и это функция, которую я написал. Однако на сервере не распознаются буквы. Есть предложения?

function strtolower_tr($string)
    {
        $low=array("Ü" => "U","ü" => "u", "Ö" => "O","ö" => "o", "Ğ" => "G","ğ" => "g", "Ş" => "S","ş" => "s", "Ç" => "C","ç" => "c", "İ" => "I","i" => "i", "I" => "i","I" => "I");
        return strtolower(strtr($string,$low));
    }

------- В СЕРВЕРЕ -------

$low=array("?~\" => "u?", "?~V" => "o?", "?~^" => "g", "?~^" => "s", "?~G" => "c", "İ" => "i", "I" => i");

РЕДАКТИРОВАНИЕ:

Я обнаружил, что это не работает для букв «ı» и «I» setlocale (LC_ALL, 'en_US.UTF8'); функция clearUTF ($ s) { $ r = ''; $ s1 = @iconv ('UTF-8', 'ASCII // TRANSLIT', $ s); $ j = 0; для ($ i = 0; $ i $ ch2) { - $ J; Продолжить; } } $ r. = ($ ch1 == '?')? $ ch2: $ ch1; } вернуть $ r; }

1 Ответ

0 голосов
/ 10 мая 2011

Ваш файл в кодировке utf? Вы должны использовать utf-кодировку для ваших исходных файлов, это решит вашу проблему.

...