2014-11-09 5 views
0

Я импортирую csv-файл в таблицу mysql. Но из-за неправильного кодирования некоторые поля пустые. Проблема решена, если я делаю преобразование в UTF-8 в Notepad ++. Могу ли я сделать это с помощью php, когда я открою этот файл? Я пробовал:Кодирование csv-файла с php

$file = fopen($csvfile,"r"); 

$file = mb_convert_encoding($file, 'UTF-8', mb_detect_encoding($file)); 

Это дало мне предупреждение: mb_internal_encoding() ожидает, что в большинстве 1 параметр

+0

Прочитайте данные из файла и используйте mb_convert_encoding() для этих данных, а не в дескрипторе файла –

+0

Или даже установите контекст [контекст потока] (http://php.net/manual/en/stream.contexts.php) для файла для преобразования кодировки –

+0

@MarkBaker Можете ли вы написать пример того, как это сделать, PLS? –

ответ

0

Вы получаете эту ошибку, потому что первый параметр fgetcsv функция должна быть «Путь CSV файл», поэтому попробуйте написать эту строку echo $file; она будет отображаться идентификатор ресурса#NUMBER

Чтобы решить эту проблему, де это эта линия.

Смежные вопросы