MySQL utf8_general таблица отображения символов - PullRequest
0 голосов
/ 14 сентября 2009

Из того, что я понимаю, когда MySQL сравнивает строку, хранящуюся в сопоставлении utf8_general, он сначала преобразует свои символы в их эквиваленты ASCII. Другими словами, ḩ = h, ţ = t, ā = a, í = i и т. Д. *

Есть ли таблица сопоставления, которую я мог бы использовать для реализации аналогичной функции сравнения в php или JavaScript? Я знаю, что в PHP есть альтернативы, такие как iconv, но их транслитерация немного отличается, например, í = 'i.

Спасибо.

1 Ответ

1 голос
/ 14 сентября 2009

Обычный подход состоит в том, чтобы нормализовать вашу строку к нормальной форме Unicode D (которая помещает диакритические знаки в отдельный символ к базовой букве), а затем удаляет все символы с помощью класса unicode, «объединяющего диакритический знак».

См. normalizer_normalize , чтобы получить нормализацию в PHP. Я не знаю о решении для JavaScript: там ничего не встроено, и вам пришлось бы заставлять клиента сосать большие таблицы символов Unicode.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...