时时商务社区
标题:
thinkPHP实现将excel导入到数据库中的方法
[打印本页]
作者:
新格网络
时间:
2018-2-14 05:37
本文实例讲述了thinkPHP实现将excel导入到数据库中的方法。分享给大家供大家参考,具体如下:
PHPExcel插件可点击此处
本站下载
。
这里使用的是thinkphp框架的3.1版本,下载好压缩包,框架中的extend中的vendor文件夹中新建一个名为PHPExcel的文件夹,把classes里面的内容放到里面
下面是前端页面
提示:我在测试的时候遇到报错exception 'PHPExcel_Reader_Exception' with message 'The filename
原因是由于excel的文件后缀可能不同,我的文件后缀是xlsx,然后给把他另存为了xls的文件,就可以了
下面是php的
function abcdefgwulisuibianuplod(){
$this->display();//显示页面
}
function abcdefgwulisuibian(){
if (!empty($_FILES)) {
import("@.ORG.UploadFile");
$config=array(
'allowExts'=>array('xlsx','xls'),
'savePath'=>'./Public/upload/',
'saveRule'=>'time',
);
$upload = new UploadFile($config);
if (!$upload->upload()) {
$this->error($upload->getErrorMsg());
} else {
$info = $upload->getUploadFileInfo();
}
vendor("
HPExcel.PHPExcel");
$file_name=$info[0]['savepath'].$info[0]['savename'];
$objReader = PHPExcel_IOFactory::createReader('Excel5');
$objPHPExcel = $objReader->load($file_name,$encode='utf-8');
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow(); // 取得总行数
$highestColumn = $sheet->getHighestColumn(); // 取得总列数
for($i=2;$igetActiveSheet()->getCell("A".$i)->getValue();//数据库字段和excel列相对应
$data['yaoqingma'] = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue();
$data['dlmima']= $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue();
$data['ljdizhi']= $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue();
M('jdb')->add($data);//插入数据库
}
$this->success('导入成功!');
}else
{
$this->error("请选择上传的文件");
}
}
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《
ThinkPHP入门教程
》、《
ThinkPHP常用方法总结
》、《
smarty模板入门基础教程
》及《
PHP模板技术总结
》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
您可能感兴趣的文章:
ThinkPHP 连接Oracle数据库的详细教程[全]
thinkphp3查询mssql数据库乱码解决方法分享
Thinkphp使用mongodb数据库实现多条件查询方法
ThinkPHP实现多数据库连接的解决方法
ThinkPHP连接数据库及主从数据库的设置教程
ThinkPHP连接数据库的方式汇总
ThinkPHP3.2.3数据库设置新特性
thinkphp表单上传文件并将文件路径保存到数据库中
thinkPHP数据库增删改查操作方法实例详解
thinkPHP5.0框架安装教程
thinkPHP5实现的查询数据库并返回json数据实例
thinkPHP5实现数据库添加内容的方法
欢迎光临 时时商务社区 (http://bbs.4435.cn/)
Powered by Discuz! X3.2