Импорт и сохранение данных из csv-файла в yii

Вот как выглядит мой файл csv: введите описание изображения здесь

У меня есть три поля ( import site , import goods , import status ) для импорта соответствующих данных. Поэтому, если пользователь нажимает на import site только для import site , имя сайта будет сохранено, а остальное – нет, аналогично для import goods и import status .

введите описание изображения здесь

Данные и данные site's сохраняются в одной таблице, но данные о goods сохраняются в другой таблице в отношении его сайта. Как сохранить их в нескольких таблицах?

Я поделюсь простым фрагментом, чтобы разобрать файлы csv, возможно, это может помочь

 $i=0; $keys=array();$output=array(); $handle=fopen($filename, "r"); if ($handle){ while(($line = fgetcsv($handle)) !== false) { $i++; if ($i==1) { $keys=$line; } elseif ($i>1){ $attr=array(); foreach($line as $k=>$v){ $attr[$keys[$k]]=$v; } $output[]=$attr; } } fclose($handle); } 

Это выполнит эту работу, я всегда буду использовать ее, когда вы придете в csv. Чтобы сделать эту работу, первая строка должна содержать ключи, например:

 import_site, import_goods, import_status 

В вашем массиве $output вы будете иметь данные с ключами $output["import_site"] и так далее.

Надеюсь, это будет полезно.

В случае, если проблемы с csv, сгенерированными на mac, запомните это:

 ini_set("auto_detect_line_endings", true); 

может сэкономить много времени;)