我需要使用YII 2.0 Framework将数据从XLS,CSV文件导入MySql数据库,
XLS,CSV文件包含应导入Mysql DB中一个表的数据,请提供任何信息以便继续。
答案 0 :(得分:5)
我希望这会有所帮助
public function actionCreate()
{
$model = new Import();
if ($model->load(Yii::$app->request->post()) ) {
$model->file = UploadedFile::getInstance($model, 'file');
if ( $model->file )
{
$time = time();
$model->file->saveAs('csv/' .$time. '.' . $model->file->extension);
$model->file = 'csv/' .$time. '.' . $model->file->extension;
$handle = fopen($model->file, "r");
while (($fileop = fgetcsv($handle, 1000, ",")) !== false)
{
$name = $fileop[0];
$age = $fileop[1];
$location = $fileop[2];
// print_r($fileop);exit();
$sql = "INSERT INTO details(name, age, location) VALUES ('$name', '$age', '$location')";
$query = Yii::$app->db->createCommand($sql)->execute();
}
if ($query)
{
echo "data upload successfully";
}
}
$model->save();
return $this->redirect(['view', 'id' => $model->id]);
} else {
return $this->render('create', [
'model' => $model,
]);
}
}