|
|
|
| Добрый день. Имеется следующий код:
echo json_encode( array( 'test' => 'Русский текст' ) );
|
В результате на выходе мы получаем:
Файл написан в кодировке CP1251 в ASCII, менять в нём кодировку нельзя. Цель использования JSON: взаимодействие с JQuery AJAX.
Как можно отремонтеровать? | |
|
|
|
|
|
|
|
для: pavluxa09
(01.07.2011 в 19:19)
| | Поверь мне лучше поменять кодировку на UTF-8 нежели потом все время спотыкаться об кириллицу, можно попытаться поискать какие-то "нормальные костыли", и по 100500 раз конвертировать строку, но оно того не стоит, все равно где-нибудь да вылезет баг.. то символ не такой всплывет то звезды не так встанут..... я в свое время уже накушался этих косяков до тех пор пока не конвертировал все приложение в утф8. | |
|
|
|
|
|
|
|
для: pavluxa09
(01.07.2011 в 19:19)
| | В первую очередь нужно убедиться, что у вас Apache отправляет HTTP-заголовки с правильной кодировкой - HTML-страницам на это плевать, а JavaScript - нет. Или, как советует Emm, использовать UTF-8, в этом случае тоже все будет нормально. | |
|
|
|
|
|
|
|
для: cheops
(02.07.2011 в 00:17)
| | Использование UTF-8 недопустимо в моём случае, я разрабатываю плагин к существующему скрипту, он к сожалению написан в кодировке UTF-8 (( | |
|
|
|
|
|
|
|
для: pavluxa09
(02.07.2011 в 06:27)
| | играйся с iconv-ом | |
|
|
|
|
|
|
|
для: pavluxa09
(02.07.2011 в 06:27)
| | Можно действительно воспользоваться iconv(), т.е. пусть себе все будет в Windows-1251, но из AJAX-скрипта данные отправляйте в UTF-8. Если у пользователя настроена автоматическое распознавание кодировки (в 95% это так и есть) - все будет нормально. | |
|
|
|