В настоящее время я разрабатываю мобильное приложение для Android. Текст и содержание находятся на локальном диалоговом языке, тамильский. Для Welcome, эквивалент перевода тамилов: வணக்கம்
. Поскольку Android не может отображать индикаторный текст, я конвертирую его с помощью службы под названием JavaScript String Escape .
Таким образом, это работает следующим образом:
வணக்கம்
\u0BB5\u0BA3\u0B95\u0BCD\u0B95\u0BAE\u0BCD
Как я могу сделать это с помощью JavaScript или PHP, поскольку у меня есть огромные нагрузки текста, которые нужно преобразовать и превратить в JSON. Пример JSON:
{ "title": "\u0BAE\u0BB0\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0BB5\u0BB0\u0BBF\u0BA9\u0BCD \u0BAA\u0BC6\u0BAF\u0BB0\u0BCD #1", "image": "http://img.ruphp.com/javascript/doc11.png", "rating": "\u2713 \u0B87\u0BAA\u0BCD\u0BAA\u0BC7\u0BBE\u0BA4\u0BC1 \u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BB2\u0BBE\u0BAE\u0BCD", "rating2": "", "releaseYear": "\u0BA8\u0BBE\u0BB3\u0BCD \u0BAE\u0BC1\u0BB4\u0BC1\u0BB5\u0BA4\u0BC1\u0BAE\u0BCD \u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BB2\u0BBE\u0BAE\u0BCD", "genre": ["\u25B6 \u0B87\u0BA4\u0BAF \u0BA8\u0BBF\u0BAA\u0BC1\u0BA3\u0BB0\u0BCD"] }
Я также хотел бы знать, как декодировать вышеупомянутый JSON и показать его как வணக்கம்
. Заранее спасибо.
То, что вы ищете, – escape()
в JavaScript и json_encode()
в PHP. Откройте консоль и введите следующее:
escape("வணக்கம்")
И вы получите следующее обратно:
"%u0BB5%u0BA3%u0B95%u0BCD%u0B95%u0BAE%u0BCD"
Итак, первая решена. Чтобы вернуть исходный வணக்கம்
из приведенного выше, используйте unescape()
:
unescape("%u0BB5%u0BA3%u0B95%u0BCD%u0B95%u0BAE%u0BCD");
Примечание. Следует отметить одно : обе
escape()
иunescape()
устарели. Поэтому вам нужно использоватьencodeURIComponent
иdecodeURIComponent
предварительный просмотр
Обновление для серверной части
Для кодирования и декодирования в JSON вам лучше использовать встроенную функцию PHP. Тот же escape()
также может использоваться в PHP как json_encode()
, они оба дают одинаковый результат.
json_encode("வணக்கம்"); => "%u0BB5%u0BA3%u0B95%u0BCD%u0B95%u0BAE%u0BCD"
Также см. JavaScript: экранирование специальных символов для получения дополнительной информации. Надеюсь это поможет. :)