程序员人生 网站导航

使用php-excel-reader读取excel文件

栏目:php教程时间:2016-06-30 16:40:30

        有时候如果有大量的数据需要导入到数据库,最低级的办法就是,1个1个的手动添加,而平常生活中,常经常使用表格来记录,能不能让PHP直接读取1个excel表格,然后,将表格中的内容,全部导入数据库呢,这模样,可以节省大量的时间。

        php-excel-reader是1个读取excel的类,可以很轻松的使用它读取excel文件。


        首先要下载有关的文件:

        链接:http://pan.baidu.com/s/1i5990hv 密码:4npd

        其余文件为事例文件,请认真分析源码。

表格对应内容:

1:引入类,创建对象,设置读取文件的目录

<?php error_reporting(E_ALL ^ E_NOTICE); require_once 'excel_reader2.php'; $data = new Spreadsheet_Excel_Reader();//创建对象 $data->setOutputEncoding('UTF⑻');//设置编码格式 $data->read("example.xls");//读取excel文档

2:读取终了后,会将表格有关的信息,全部存到1个大数组中。

<?php error_reporting(E_ALL ^ E_NOTICE); require_once 'excel_reader2.php'; $data = new Spreadsheet_Excel_Reader();//创建对象 $data->setOutputEncoding('UTF⑻');//设置编码格式 $data->read("example.xls");//读取excel文档 echo "<pre>"; print_r($data->sheets); echo "</pre>";

运行结果以下

3:如果要读取,数组中的详细内容,给出几个例子

<?php error_reporting(E_ALL ^ E_NOTICE); require_once 'excel_reader2.php'; $data = new Spreadsheet_Excel_Reader();//创建对象 $data->setOutputEncoding('UTF⑻');//设置编码格式 $data->read("example.xls");//读取excel文档 //echo "<pre>"; //print_r($data->sheets); //echo "</pre>"; echo $data->sheets[0]['numRows']."行<br>";//读出1共几行 echo $data->sheets[0]['numCols']."列<br>";//读出1共几列 echo $data->sheets[0]['cells'][1][1]."<br>";//读出第1行第1列的内容 print_r($data->sheets[0]['cells'][1]);//第1行的数据 echo "<br>"; echo implode(",",$data->sheets[0]['cells'][1])."<br>";//去除第1行的数据,每一个中间添加分隔符 for($i=1;$i<=$data->sheets[0]['numCols'];$i++)//1次读出第1行的所有数据 { echo $data->sheets[0]['cells'][1][$i]." "; } echo "<br>"; echo "<br>"; //读出所有数据 for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) { //$data->sheets[0]['numCols']为Excel列数 for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) { //显示每一个单元格内容 echo $data->sheets[0]['cells'][$i][$j].' '; } echo '<br>'; }



注意上述,echo implode(",",$data->sheets[0]['cells'][1])."<br>";//去除第1行的数据,每一个中间添加分隔符,,的利用,这样就能够,直接向数据库插入1整行的数据了



注:

dump(),它可以将excel内容以html格式输出:

echo $data->dump(true,true);

<?php error_reporting(E_ALL ^ E_NOTICE); require_once 'excel_reader2.php'; $data = new Spreadsheet_Excel_Reader("example.xls"); ?> <html> <head> <style> table.excel { border-style:ridge; border-width:1; border-collapse:collapse; font-family:sans-serif; font-size:12px; } table.excel thead th, table.excel tbody th { background:#CCCCCC; border-style:ridge; border-width:1; text-align: center; vertical-align:bottom; } table.excel tbody th { text-align:center; width:20px; } table.excel tbody td { vertical-align:bottom; } table.excel tbody td { padding: 0 3px; border: 1px solid #EEEEEE; } </style> </head> <body> <?php echo $data->dump(true,true); ?> </body> </html>








------分隔线----------------------------
------分隔线----------------------------

最新技术推荐