当前位置:首页 > PHP教程 > php高级应用 > 列表

php 导入excel文件mysql数据库方法

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-11 09:19:43 浏览: 评论:0 

应该说介绍了利用phpexcel插件来实现数据库的导入与导入功能,本文章主要是告诉你把excel导入到mysql数据库的方法.

先下载,下载phpexcel文件,地址:phpexcel.codeplex.com/

在reader.php文件中找到以下类似代码,第一行既是,改成正确的oleread.php路径即可:require_once 'oleread.php';然后新建一个php文件引入reader.php,代码如下:

  1. <?php  
  2. require_once 'Excel/reader.php';  
  3. $data = new Spreadsheet_Excel_Reader(); 
  4. $data->setOutputEncoding('gbk');//此处设置编码,一般都是gbk模式 
  5.  
  6. $data->read('Book1.xls');//文件路径 
  7.  
  8. error_reporting(E_ALL ^ E_NOTICE); 
  9. //这里我就只循环输出excel文件的内容了,要入库,只要把输出的地方,写一段mysql语句即可~ 
  10. for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) { 
  11.  for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) { 
  12.   echo """.$data->sheets[0]['cells'][$i][$j]."","
  13.  } 
  14.  echo "n"
  15. ?> 

代码示例如下:

  1. require_once 'phpexcel/Classes/PHPExcel.php'
  2. require_once 'phpexcel/Classes/PHPExcel/IOFactory.php'
  3. require_once 'phpexcel/Classes/PHPExcel/Reader/Excel5.php'
  4. $objReader = PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format  
  5. $objPHPExcel = $objReader->load($filename);   //$filename可以是上传的文件,或者是指定的文件 
  6. $sheet = $objPHPExcel->getSheet(0);  
  7. $highestRow = $sheet->getHighestRow(); // 取得总行数  
  8. $highestColumn = $sheet->getHighestColumn(); // 取得总列数 
  9. $k = 0;    
  10.  
  11. //循环读取excel文件,读取一条,插入一条 
  12.    for($j=2;$j<=$highestRow;$j++) 
  13.    { 
  14.  
  15.      $a = $objPHPExcel->getActiveSheet()->getCell("A".$j)->getValue();//获取A列的值 
  16.      $b = $objPHPExcel->getActiveSheet()->getCell("B".$j)->getValue();//获取B列的值 
  17.      $sql = "INSERT INTO table VALUES(".$a.",".$b.")"
  18.      mysql_query($sql); 
  19.  
  20.    } 

代码实例cvs导入到数据库,把csv导入到数据库,代码如下:

  1. function   getmicrotime(){      
  2.              
  3.               list($usec,   $sec)   =   explode("   ",microtime());      
  4.              
  5.                     return   ((float)$usec   +   (float)$sec);    
  6.             }    
  7.      
  8.   $time_start   =   getmicrotime();    
  9.      
  10.   include   ("connectdb.php");    
  11.      
  12.      
  13.   function   insert_data   ($id,$summary,$description,$additional_information,$category)    
  14.      
  15.       {    
  16.              
  17.           $my_query1   =   "insert   into   mantis_bug_text_table   (id,description,additional_information)      
  18.                    
  19.           values   ('$id','$description','$additional_information')";    
  20.            
  21.           $first   =   mysql_query($my_query1);        
  22.      
  23.           $my_query2   =   "insert   into   mantis_bug_table   (id,project_id,summary,bug_text_id)   values   ('$id','$category','$summary','$id')";    
  24.                    
  25.           $second   =   mysql_query($my_query2);        
  26.            
  27.           return;    
  28.       }    
  29.      
  30.   $fp   =   fopen("test.csv","r");    
  31.      
  32.   while($data   =   fgetcsv($fp,'1000',',')){    
  33.    //开源代码phpfensi.com 
  34.               insert_data   ($data[0],$data[1],$data[2],$data[3],$data[4]);   
  35.            
  36.               echo   "<font   color   =   #ff0000   size   =   20>数据导入成功!</font><br><br>";        
  37.       }    
  38.   fclose   ($fp);    
  39.      
  40.   $time_end   =   getmicrotime();    
  41.      
  42.   $time   =   $time_end   -   $time_start;    
  43.      
  44.   echo   "程序执行时间:".$time."秒";

Tags: php导入excel mysql数据库

分享到: