Я использую google translate с моим сайтом для перевода коротких, часто используемых фраз. Вместо того, чтобы каждый раз просить google для перевода, я думал о кэшировании переводов в таблице MySQL.
В любом случае, он отлично работает для латинских символов, но не подходит для других, таких как азиат. Какую сортировку/кодировку лучше всего использовать?
Также - я пробовал по умолчанию (latin1_swedish_ci
) и utf8_unicode_ci
Один из них должен сделать трюк: http://dev.mysql.com/doc/refman/5.0/en/charset-unicode-sets.html
Также, как видно из документации MySQL:
Клиентские приложения, которые должны общаться с сервером, используя Юникод должен установить клиент набор символов соответственно; для например, путем выдачи
SET NAMES 'utf8'
утверждение.
Итак, если вы выберете кодировку utf8_unicode_ci
, вам нужно будет выполнить запрос SET NAMES 'utf8'
для каждого подключения к вашей базе данных (запустите его после mysql_select_db() или того, что вы используете).
Сопоставление не имеет ничего общего с международными символами. Charset делает.
Обычным решением является utf8.
Не знаю, что значит "я пробовал utf8_unicode_ci", но, по крайней мере, вы должны сообщить базе данных, что кодирует ваши данные. SET NAMES utf8
запрос может это сделать, если ваши данные из Google используют эту кодировку