Как передать строку в заведомо неизвестной кодировке из php в javascript?
Была мысль закодировать строку в base64, но как оказалось, корректный результат после декодирования можно получить только со строкой в utf-8. На этом все мои идеи и закончились.
Строки в PHP внутренне представляют из себя массивы байт. Если вы их передаете из пхп as is - какие вопросы к нему должны быть? Взяли в неизвестной кодировке - отдали в неизвестной кодировке. Или что-то другое имелось в виду?
Передачу в лоб я почему-то даже не проверил, видимо отпугнули кракозябры в теле документа. Сейчас поверхностный тест показал, что строка-таки передается корректно. Спасибо.
но как оказалось, корректный результат после декодирования можно получить только со строкой в utf-8
значит кодировку страницы документа нужно установить в utf-8 и строку кодировать в utf-8 на серверной стороне.
Есть ступенчатый алгоритм (я не буду тут приводить, слишком долго писать), но лучше выставлять кодировку на основе явно-указанных данных (теги и заголовки страницы, если вы - парсите и т.д.).
MBean: в оригинальной - JS получит всегда, если Вы не преобразуете кодировку строки на стороне сервера.
Существующие механизмы - о каких именно механизмах идёт речь?