сменить кодировку файла.

12 3
G
На сайте с 24.10.2009
Offline
51
7196

Есть ли возможность средствами php изменить кодировку файла, загруженного на сервер, не считывая его? Например с cp1251 на UTF-8

Заранее спасибо.

iren K
На сайте с 28.12.2008
Offline
222
#1

руками это делается так:

если у вас сайт отдается в cp1251 а база в utf-8, то добавляем в код сайта строчку

после соединения с БД:

mysql_query("SET NAMES 'cp1251'");

c уважением Iren
LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#2

http://www.google.ru/search?client=opera&rls=ru&q=PHP+incov&sourceid=opera&ie=utf-8&oe=utf-8

LEOnidUKG добавил 19.09.2010 в 18:48

iren K:
руками это делается так:
если у вас сайт отдается в cp1251 а база в utf-8, то добавляем в код сайта строчку
после соединения с БД:
mysql_query("SET NAMES 'cp1251'");

А ничего что человек написал ФАЙЛ

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
G
На сайте с 24.10.2009
Offline
51
#3

iconv() - Convert string to requested character encoding

А мне бы желательно файл. только не считывая его. Так что всякие file_get_contents() не подойдут. Нельзя, чтобы использовалось много памяти, так как файлы достаточно большие. 2-3 мб

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#4
Gaaarfild:
iconv() - Convert string to requested character encoding
А мне бы желательно файл. только не считывая его. Так что всякие file_get_contents() не подойдут. Нельзя, чтобы использовалось много памяти, так как файлы достаточно большие. 2-3 мб

Через консоль тогда. У вас есть доступ на шелл?

iren K
На сайте с 28.12.2008
Offline
222
#5
Gaaarfild:
iconv() - Convert string to requested character encoding
А мне бы желательно файл. только не считывая его. Так что всякие file_get_contents() не подойдут. Нельзя, чтобы использовалось много памяти, так как файлы достаточно большие. 2-3 мб

посмотрите - вомжно Вы не там смотрите..

G
На сайте с 24.10.2009
Offline
51
#6

Нет. шелл к сожалению, недоступен.

iren K
На сайте с 28.12.2008
Offline
222
#7
LEOnidUKG:
http://www.google.ru/search?client=opera&rls=ru&q=PHP+incov&sourceid=opera&ie=utf-8&oe=utf-8

LEOnidUKG добавил 19.09.2010 в 18:48


А ничего что человек написал ФАЙЛ

идет обращение к базе..как бы

iren K добавил 19.09.2010 в 19:18

Gaaarfild:
Нет. шелл к сожалению, недоступен.

почему? ((

G
На сайте с 24.10.2009
Offline
51
#8

Проблема по сути в чем. Я загружаю CSV файл. А потом с помощью SQL загоняю его в БД.

Но файлы PHP в кодировке UTF-8.

CSV тоже должен быть в UTF-8. Но пользователи порой путают кодировку, когда создают CSV и делают в CP1251.

Вот хотел бы обезопасится.

А, так как я файлы не считываю с помощью PHP, iconv не получится для String применить. Надо сначала изменить кодировку закачанного файла, а потом обрабатывать его с помощью MySQL.

iren K
На сайте с 28.12.2008
Offline
222
#9

обращение к файлу уже офоримте через mysql_query("SET NAMES 'cp1251'");

G
На сайте с 24.10.2009
Offline
51
#10

Оно и так у меня SET NAMES cp1251

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий