Показать сообщение отдельно
  #11 (permalink)  
Старый 22.05.2015, 17:34
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Потому что json_encode(), применительно к пхп, работает только с юникодом. Поэтому те, кто не удосужился еще избавиться от виндовой кодировки и колхозят жисоны конкатенацией и косячат как видите.

Кстати, я как-то потратил полдня пытаясь наладить импорт-экспорт csv по юникоду. Х нанэ. Екзель utf-8 не понимает в принципе, ему надо нормальный юникод, а php когда делает csv в нормальном юникоде - глючит на кириллице. Пришлось забить и конвертить туда-сюда.

В смысле

fputcsv($handle,array_map(function($s) use($encoding){return mb_convert_encoding($s,$encoding);},$row),$delimiter);


fputcsv не ескепит кириллицу если в $encoding воткнуть ключ нормального юникода. Я уже забыл как он называется, пробовал и big и little endian - эквипенисуально. Екзель - мастдай.

Последний раз редактировалось kostyanet, 22.05.2015 в 17:39.
Ответить с цитированием