cmf5 excel 导入
2022-10-08 17:22:18
260
{{single.collect_count}}
public function excel(){vendor("PHPExcel.Classes.PHPExcel");vendor('PHPExcel.Classes.PHPExcel.IOFactory.PHPExcel_IOFactory');vendor('PHPExcel.Classes.PHPExcel.Reader.Excel5');$file_url = input('file_url');$file_name = input('file_name');//文件名$file_url = './upload/'.$file_url;//文件url$extension = cmf_get_file_extension($file_name);//文件扩展名if(empty($file_url)){$this->error('请先上传excel!');}if($extension == 'xlsx'){$objReader =\PHPExcel_IOFactory::createReader('Excel2007');$objPHPExcel = $objReader->load($file_url, $encode = 'utf-8');//加载文件内容,编码utf-8}else if($extension == 'xls'){$objReader =\PHPExcel_IOFactory::createReader('Excel5');$objPHPExcel = $objReader->load($file_url, $encode = 'utf-8');//加载文件内容,编码utf-8}else{$this->error('请上传Excel格式的文件!','');}$excel_array=$objPHPExcel->getsheet(0)->toArray(); //转换为数组格式array_shift($excel_array);//删除第一个数组(标题);$data = [];$categorys = Db::name('portal_category')->select();foreach($excel_array as $k=>$v) {$data[$k]['post_title'] = $v[0]; // 手机号for( $i=0; $i<strlen($v[0]); $i++ ){$data[$k]['tel_'.$i] = substr($v[0], $i, 1);}foreach ($categorys as $key => $value) {if ($value['name'] == $v[1]) {$data[$k]['category_id'] = $value['id']; // 分类}}if ($v[2]=='普通') {$data[$k]['card_type'] = 2; // 普通 }elseif($v[2]=='靓号'){$data[$k]['card_type'] = 1; // 靓号}$data[$k]['post_money'] = $v[3]; // 价格$data[$k]['post_ascription'] = $v[4]; //归属地$data[$k]['post_operators'] = $v[5]; //运营商$data[$k]['post_content'] = $v[6]; //详情$data[$k]['create_time'] = time(); // 创建时间$data[$k]['update_time'] = time(); // 更新时间$data[$k]['published_time'] = time(); // 发布时间$data[$k]['user_id'] = cmf_get_current_admin_id(); // 用户id$result = Db::name('portal_post')->where(['post_title' => $v[0]])->find(); if ($result) {$rs = Db::name('portal_post')->where(['id'=>$result['id']])->update($data[$k]);//如果已有这条数据就更新这条数据}else{$rs = Db::name('portal_post')->insert($data[$k]);//如果为空就添加这条数据 }}// echo "<pre/>";// print_r($data);die;// Db::name('portal_post')->insertAll($data)if($rs){unlink($file_url);//这里是删除上传后的文件$this->success('导入数据成功!');} else {$this->error('导入数据失败!');}}

 

回帖
全部回帖({{commentCount}})
{{item.user.nickname}} {{item.user.group_title}} {{item.friend_time}}
{{item.content}}
{{item.comment_content_show ? '取消' : '回复'}} 删除
回帖
{{reply.user.nickname}} {{reply.user.group_title}} {{reply.friend_time}}
{{reply.content}}
{{reply.comment_content_show ? '取消' : '回复'}} 删除
回帖
收起
没有更多啦~
{{commentLoading ? '加载中...' : '查看更多评论'}}