Неправильная обработка при импорте CSV-файла с обратным слэшем перед кавычками и точкой с запятой(разделение ячеек CSV) Исправлено

2

Добрый день!

Столкнулся с такой проблемой.

Есть список товаров для импорта в формате CSV.

Кусок файла:

"Ссылка на витрину";"Наименование";"Тип товаров";"Код артикула";"Цена";"Единица измерения";"Производитель"
"47514";"VCPO БЛОК.НАВЕСН. ЗАМКАМИ В ПОЛОЖ. \ОТКЛЮЧЕН\";"Низковольтное оборудование";"47514";"6712.47";"шт.";"Schneider Electric"
"33579";"ДАТЧИК ТОКА SGR \ВОЗВРАТ ТОКА ПО ЗАЗЕМЛИТЕЛЮ\";"Низковольтное оборудование";"33579";"76622.14";"шт.";"Schneider Electric"

При импорте shop-script импортирует в Наименование так:

VCPO БЛОК.НАВЕСН. ЗАМКАМИ В ПОЛОЖ. \ОТКЛЮЧЕН\";"Низковольтное оборудование

То есть кавычка экранируется обратным слэшем. Понимаю, что это заложено в PHP.

Но можно это как-то в вашем скрипте импорта дополнительно как-то проверять на наличие таких участков и обрабатывать все ячейки ?

Пока приходится все CSV файлы для импорта проверять на наличие участка:

\";"

и заменять на:

\\";"

(хотя можно ставить любые символы. главное, чтобы не было одного обратного слеша перед ";"[разделением ячеек])

Но тогда в Наименование товара добавляются лишние обратные слэши:

VCPO БЛОК.НАВЕСН. ЗАМКАМИ В ПОЛОЖ. \ОТКЛЮЧЕН\\
ДАТЧИК ТОКА SGR \ВОЗВРАТ ТОКА ПО ЗАЗЕМЛИТЕЛЮ\\

Как думаете, сможете добавить соответствующую проверку для импорта CSV?

0 комментариев

    Добавить комментарий

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