>  기사  >  백엔드 개발  >  php导入excel数据到mysql_PHP教程

php导入excel数据到mysql_PHP教程

WBOY
WBOY원래의
2016-07-15 13:21:53910검색

实例:

 
1.导入只有一个sheets的excel文件
 
     require_once ("db.php");  //引用数据库实例化类
 
 
     require_once ("reader.php");  // 应用导入excel的类
 
 
 
     $data = new Spreadsheet_Excel_Reader();  //实例化类
 
 
    $data->setOutputEncoding('utf-8');//设置编码
    
    $data->read($_FILES["excel"]["tmp_name"]);//读取excel临时文件
 
 
    if ($data->sheets[0]['numRows']>0){   //判断excel里面的行数是不是大于0行  $data->sheets[0]['numRows']是excel的总行数
      
      for ($i = 2; $i sheets[0]['numRows']; $i++) {  //将execl数据插入数据库  $i表示从excel的第$i行开始读取  
              $sql="insert into `user` (`user_name`,`phone`,`user_email`,`password`) values(                 
                    '{$data->sheets[0]['cells'][$i][1]}',  //$i是excel中的行号
                    '{$data->sheets[0]['cells'][$i][2]}',
                   '{$data->sheets[0]['cells'][$i][3]}',
                   '123456'
             )";
        $db->query($sql);
      }
            
     }
 
 
 
2 导入存在多个sheets的excel文件
 
 其实和导入一个sheets是一样的 如果有两个sheets(以此类推)
 
require_once ("db.php");  //引用数据库实例化类
 
 
     require_once ("reader.php");  // 应用导入excel的类
 
 
 
     $data = new Spreadsheet_Excel_Reader();  //实例化类
 
 
    $data->setOutputEncoding('utf-8');//设置编码
    
    $data->read($_FILES["excel"]["tmp_name"]);//读取excel临时文件
 
 
if ($data->sheets[0]['numRows']>0){ //判断excel里面的行数是不是大于0行 $data->sheets[0]['numRows']是excel的总行数  这里的$data->sheets[0]表示excel中的第一sheets
      
      for ($i = 2; $i sheets[0]['numRows']; $i++) {  //将execl数据插入数据库  $i表示从excel的第$i行开始读取  
              $sql="insert into `user` (`user_name`,`phone`,`user_email`,`password`) values(                 
                    '{$data->sheets[0]['cells'][$i][1]}',  //$i是excel中的行号
                    '{$data->sheets[0]['cells'][$i][2]}',
                   '{$data->sheets[0]['cells'][$i][3]}',
                   '123456'
             )";
        $db->query($sql);
      }
 
 
 
 if ($data->sheets[1]['numRows']>0){   //判断excel里面的行数是不是大于0行  $data->sheets[0]['numRows']是excel的总行数 这里的$data->sheets[1]表示第二个sheets
      for ($i = 2; $i sheets[1]['numRows']; $i++) {  //将execl数据插入数据库  $i表示从excel的第$i行开始读取  
              $sql="insert into `user` (`user_name`,`phone`,`user_email`,`password`) values(                 
                    '{$data->sheets[1]['cells'][$i][1]}',  //$i是excel中的行号
                    '{$data->sheets[1]['cells'][$i][2]}',
                   '{$data->sheets[1]['cells'][$i][3]}',
                   '123456'
             )";
        $db->query($sql);
      }
 
            
     }
 
 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/477132.htmlTechArticle实例: 1.导入只有一个sheets的excel文件 require_once (db.php); //引用数据库实例化类 require_once (reader.php); // 应用导入excel的类 $data = new Spreadsheet...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.