php上传csv导入,CSV文件导入

数据导入csv导入最简单

下面以抽奖用户导入为案例

/**

* CSV抽奖用户导入

*/

public function userwrite()

{

// 获取表单上传文件

$file = request()->file('csvfile');

/*echo "

";

var_dump($file);die;*/

if(empty($file)) {

$this->error('请选择上传文件');

}

// 移动到框架应用根目录/public/uploads/ 目录下

$info = $file->move(ROOT_PATH.'runtime'.DS.'upload');

//获取文件(日期/文件),$info->getFilename();

$filename = ROOT_PATH.'runtime'.DS.'upload/'.$info->getSaveName();

$handle = fopen($filename,'r');

$csv = new Csv();

$result = $csv->input_csv($handle); // 解析csv

$len_result = count($result);

if($len_result == 0){

$this->error('此文件中没有数据!');

}

$data_values = '';

for($i = 1;$i < $len_result+1;$i ++) { // 循环获取各字段值

$arr = array_values($result[$i]);

$qu_name = iconv('gb2312','utf-8',$arr[0] ); // 中文转码

$qu_options = iconv('gb2312','utf-8',$arr[1]);

$create_time = time();

$update_time = time();

$create_by = session('session.name');

$data_values .= "('$qu_name','$qu_options','$create_time','$update_time','$create_by'),";

}

$data_values = substr($data_values,0,- 1 ); // 去掉最后一个逗号

fclose($handle); // 关闭指针

// 批量插入数据表中

$result = DB::execute("insert into     clcd_lucky_user (phone,times,create_time,update_time,create_by) values $data_values" );

if($result){

$this->success('文件上传成功,数据已经导入!','lucklist',3);

}else{

// 上传失败获取错误信息

$this->error($file->getError());

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值