杀神经的牙为什么会疼:PHP将EXCEL导入MYSQL的具体方法介绍

来源:百度文库 编辑:中财网 时间:2024/04/30 00:59:02
PHP语言的功能是非常强大的,它也是我们经常会使用到的一种计算机高级语言。在这里,我们将会为大家介绍有关PHP将EXCEL导入MYSQL的具体方法。最近因项目需求,要实现将excel文件通过php页面导入mysql数据库中。

  在网上搜了很多这方面的资料,发现都是将excel文件另存为csv文件,然后从csv文件导入。这里介绍一个直接将excel文件导入mysql的例子。我花了一晚上的时间测试,无论导入简繁体都不会出现乱码,非常好用。

  PHP-ExcelReader,下载地址: http://sourceforge.net/projects/phpexcelreader

  说明:

  PHP将EXCEL导入MYSQL的测试环境:MYSQL数据库采用utf8编码.导入EXCEL文档是xls格式,经过测试,xlsx 格式[excel 2007]也OK.

  文中红色标注为需要注意的地方,请替换成你配置好的数据,如数据库配置等。运行http://localost/test.php实现导入。

  以下是我贴出的详细代码,其中test.php为我写的测试文件,reader.php和oleread.inc文件是从上面提供的网址中下载的。

  1. PHP将EXCEL导入MYSQL的代码示例test.php

  < ?php require_once 'reader.php'; // ExcelFile($filename,$encoding); $data = new Spreadsheet_Excel_Reader(); // Set outputEncoding. $data->setOutputEncoding('gbk');//”data.xls”是指要导入到mysql中的excel文件 $data->read('data.xls'); @ $db =mysql_connect('localhost', 'root', '123456') or die("Could not connectto database.");//连接数据库 mysql_query("set names 'gbk'");//输出中文mysql_select_db('mydb'); //选择数据库 error_reporting(E_ALL ^ E_NOTICE); for($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {//以下注释的for循环打印excel表数据 /* for ($j = 1; $j < =$data->sheets[0]['numCols']; $j++) { echo"\"".$data->sheets[0]['cells'][$i][$j]."\","; } echo ""; */ //以下代码是将excel表数据【3个字段】插入到mysql中,根据你的excel表字段的多少,改写以下代码吧! $sql ="INSERT INTO test VALUES('". $data->sheets[0]['cells'][$i][1]."','".$data->sheets[0]['cells'][$i][2]."','".$data->sheets[0]['cells'][$i][3]."')"; echo $sql.'< br />';$res = mysql_query($sql); } ?>

  以上就是PHP将EXCEL导入MYSQL的相关方法介绍,希望多又需要的朋友有所帮助。