Почему fgetcsv() обрезает в слове...

voland

Guest
Почему fgetcsv() обрезает в слове...

Мне понадобилось сделать в БД вставку данных их CSV файла.
Файл в виндовской кодировке. Внутри разделителем служит точка с запятой. У меня там есть поле, в нем записаны районы!

Так вот в массив почему то записываються обрезанные слова
вместо

невский - невск
центральный - центральны
адмиралтейский - адмиралтейск

Если же использовать функию fgets(), то все нормально!
Поясните пожалуйста причину!
 

Georgy

Guest
хех... тут где-то было, что эта функция работает криво - проще юзать LOAD DATA
 

voland

Guest
Ну я не нашел ответа на свой вопрос, почему? Что обрезает я понял, как исправить тоже, а вот почему?
 

voland

Guest
System: SunOS cheetah 5.9 Generic_112233-01 sun4u sparc SUNW,Ultra-80

PHP Version 4.2.3

Пример данных 1 строка :

1;3;Центральный;;Невский пр 131;4;6;136;67+17,5+15,5;25;;Невский пр. 10 пеш;+;СФ;С;Акрополь;322-53-77;133;ПП,евро,меб,9357739; ;849
 

voland

Guest
Как я могу это сделать на хостинге? Хостинг
http://nodex.ru
 

alpes

Весь мир на ладони
Боюсь обновление версии ничего не даст, fgetcsv криво работает с кирилицей и все тут. У меня был траходром с буквой 'ш' в конце слова, ничего не дало положительного результата. Собственно вывод один - юзать без нее, тем более ведь не сложно обойти. Читаешь file а затем рубишь строки через explode.
 

tony2001

TeaM PHPClub
>Боюсь обновление версии ничего не даст, fgetcsv криво работает с кирилицей и все тут.
я специально возился с этой функцией на разных версиях - так и не смог добиться глюков.

>Читаешь file а затем рубишь строки через explode.
если бы все было так просто - зачем бы она была нужна?
 

voland

Guest
Я могу выкинуть свой код посмотрите, но код совершенно рабочий, в нем все нормально! Это я делаю такой вывод из того, что букв нет уже в массиве! А это я не могу контролировать!
 

voland

Guest
Извини за тупость, но я в английском не силен! Что там вкратце?
 

si

Administrator
http://www.translate.ru/text.asp?lang=ru
Эта проблема никогда не происходит на системах, которые используют GNU libc и могут также быть воспроизведены с libc Солнца или libc Микрософта AFAIK.
 

voland

Guest
То есть как раз моя ситуация.... :) Ведь у меня как раз на хостинге SunOS... Ясно спасибо...
 
Сверху