Heim >php教程 >php手册 >php excel reader读取excel内容存入数据库实现代码

php excel reader读取excel内容存入数据库实现代码

WBOY
WBOYOriginal
2016-06-13 11:56:231251Durchsuche

上一篇文章介绍了php-excel-reader读取excel文件的方法,因为需要,将excel这样的数据:

新建数据库表如下:

-- 数据库: `alumni`

-- 表的结构 `alumni`

CREATE TABLE IF NOT EXISTS `alumni` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `gid` varchar(20) DEFAULT NULL COMMENT '档案编号',

  `student_no` varchar(20) DEFAULT NULL COMMENT '学号',

  `name` varchar(32) DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `gid` (`gid`),

  KEY `name` (`name`)

) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

导入后数据库结果如下:

php源码如下:

复制代码 代码如下:


header("Content-Type:text/html;charset=utf-8");
require_once 'excel_reader2.php';
set_time_limit(20000);
ini_set("memory_limit","2000M");
//使用pdo连接数据库
$dsn = "mysql:host=localhost;dbname=alumni;";
$user = "root";
$password = "";
try{
$dbh = new PDO($dsn,$user,$password);
$dbh->query('set names utf8;');
}catch(PDOException $e){
echo "连接失败".$e->getMessage();
}
//pdo绑定参数操作
$stmt = $dbh->prepare("insert into alumni(gid,student_no,name) values (:gid,:student_no,:name) ");
$stmt->bindParam(":gid", $gid,PDO::PARAM_STR);
$stmt->bindParam(":student_no", $student_no,PDO::PARAM_STR);
$stmt->bindParam(":name", $name,PDO::PARAM_STR);
//使用php-excel-reader读取excel内容
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('UTF-8');
$data->read("stu.xls");
for ($i = 1; $i sheets[0]['numRows']; $i++) {
for ($j = 1; $j $student_no = $data->sheets[0]['cells'][$i][1];
$name = $data->sheets[0]['cells'][$i][2];
$gid = $data->sheets[0]['cells'][$i][3];
}
//将获取的excel内容插入到数据库
$stmt->execute();
}
echo "执行成功";
echo "最后插入的ID:".$dbh->lastInsertId();
?>


考虑到excel的量比较大,使用了PDO的绑定操作!
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn