$filetmpname = APP_PATH.'public/Uploads/624.xls'
Vendor('Classes.PHPExcel')
$objPHPExcel = PHPExcel_IOFactory::load($filetmpname)
$arrExcel = $objPHPExcel->getSheet(0)->toArray()
//删除不要的表头部分,我的有三行不要的,删除三次
array_shift($arrExcel)
array_shift($arrExcel)
array_shift($arrExcel)//现在可以打印下$arrExcel,就是你想要的数组啦
//查询数据库的字段
$m = M('swt')
$fieldarr = $m->query("describe kefu_swt")
foreach($fieldarr as $v){
$field[] = $v['Field']
}
array_shift($field)//删除自动增长的ID
//循环给数据字段赋值
foreach($arrExcel as $v){
$fields[] = array_combine($field,$v)//将excel的一行数据赋值给表的字段
}
//批量插入
if(!$ids = $m->addAll($fields)){
$this->error("没有添加数据")
}
$this->success('添加成功')
}
向两个表插入数据,要写两个表的插入sql语句,你先写主表的插入语句,插入成功会返回一个主键编号,你利用这个编号作为附表的条件再写附表的插入语句就行了。。。或者你查询出主表的id最大值,在最大值的基础上加 1 ,作为附表的条件插入数据...
不知道这样子说你是否明白
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)