php – Yii – 如何上传csv以保存在数据库中?
作者:互联网
我有一些麻烦,弄清楚如何读取我上传的CSV文件,可能我在我的控制器代码中遗漏了一些东西.
public function actionImport() {
$model = new Produtos;
$this->render('import', array('model' => $model) );
if( isset($_FILES['csv_file']) ) {
$handle = fopen($_FILES['csv_file']['tmp_name'], 'r');
if ($handle) {
while( ($line = fgetcsv($handle, 1000, ";")) != FALSE) {
$model->codigo = $line[0];
$model->nome = $line[1];
$model->descricao = $line[2];
$model->stock = $line[3];
$model->data_reposicao = $line[4];
$model->save();
}
}
fclose($handle);
}
}
这只是为了节省我在CSV中的最后一行…请一些帮助!
任何帮助将非常感激.
谢谢
解决方法:
不要忘记检查数据是否成功验证.
在您的代码之间插入此代码:
$model->data_reposicao = $line[4];
if (!$model->validate())
throw new Exception("Validation failed.");
$model->save();
所以你可以看到出了什么问题.
标签:php,csv,yii,fgetcsv 来源: https://codeday.me/bug/20190530/1185813.html