国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

PHP Excel類讀取excel文件并且導(dǎo)入數(shù)據(jù)庫

2024-05-04 21:49:14
字體:
供稿:網(wǎng)友

在一般情況下如果我們要把excel數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)入到mysql數(shù)據(jù)庫我們沒什么好辦法實(shí)現(xiàn)了,但有了PHP Excel失控這后一切都變得簡單了.

本代碼是在thinkphp中開始使用的.

1.引入類,代碼如下:

  1. Vendor('PHPExcel.PHPExcel');//引入擴(kuò)展類.就是/ 
  2.         Vendor('PHPExcel.PHPExcel.IOFactory'); 
  3.         Vendor('PHPExcel.PHPExcel.Reader.Excel5'); 
  4.  
  5. $excel_file= ROOT_PATH."/public/Uploads/".$publicity_bankdata_mod->where("id=".$data['id'])->getField('excel_file'); 
  6.         //dump($excel_file);exit; 
  7. $objReader = PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format 
  8. $objPHPExcel = $objReader->load($excel_file);//$uploadfile 
  9. $sheet = $objPHPExcel->getSheet(0); 
  10. $highestRow = $sheet->getHighestRow(); // 取得總行數(shù) 
  11. $highestColumn = $sheet->getHighestColumn(); // 取得總列數(shù) 
  12. $arr_result = array(); 
  13. $strs=array(); 
  14. $strs_datas=array(); 
  15. $succ_result=0; 
  16. $error_result=0; 

上面看上去有點(diǎn)亂,下面我來寫一個(gè)完整的類,代碼如下:

  1. <?php 
  2. set_time_limit(20000); 
  3. ini_set('memory_limit','-1'); 
  4. require_once './PHPExcel.php'
  5. require_once './PHPExcel/IOFactory.php'
  6. require_once './PHPExcel/Reader/Excel5.php'
  7.  
  8. //使用pdo連接數(shù)據(jù)庫 
  9. $dsn = "mysql:host=localhost;dbname=alumni;"
  10. $user = "root"
  11. $password = ""
  12. try{ 
  13.  $dbh = new PDO($dsn,$user,$password); 
  14.  $dbh->query('set names utf8;');  
  15. }catch(PDOException $e){ 
  16.  echo "連接失敗".$e->getMessage(); 
  17. //pdo綁定參數(shù)操作 
  18. $stmt = $dbh->prepare("insert into alumni(gid,student_no,name) values (:gid,:student_no,:name) "); 
  19. $stmt->bindParam(":gid"$gid,PDO::PARAM_STR); 
  20. $stmt->bindParam(":student_no"$student_no,PDO::PARAM_STR); 
  21. $stmt->bindParam(":name"$name,PDO::PARAM_STR); 
  22.  
  23. $objReader = new PHPExcel_Reader_Excel5(); //use excel2007 
  24. $objPHPExcel = $objReader->load('bks.xls'); //指定的文件 
  25. $sheet = $objPHPExcel->getSheet(0); 
  26. $highestRow = $sheet->getHighestRow(); // 取得總行數(shù) 
  27. $highestColumn = $sheet->getHighestColumn(); // 取得總列數(shù) 
  28.  
  29. for($j=1;$j<=10;$j++) 
  30.  
  31. $student_no = $objPHPExcel->getActiveSheet()->getCell("A".$j)->getValue();//第一列學(xué)號 
  32. $name = $objPHPExcel->getActiveSheet()->getCell("B".$j)->getValue();//第二列姓名 
  33. $gid = $objPHPExcel->getActiveSheet()->getCell("C".$j)->getValue();//第三列g(shù)id 
  34. //將獲取的excel內(nèi)容插入到數(shù)據(jù)庫 
  35. //開源代碼Vevb.com 
  36. $stmt->execute(); 
  37. ?>  

php-excel-reader操作excel中的兩個(gè)重要的方法:

1.dump(),它可以將excel內(nèi)容以html格式輸出:echo $data->dump(true,true);

2.將excel數(shù)據(jù)存入數(shù)組中,使用$data->sheets,打印下如下:

  1. Array  
  2. (  
  3. [0] => Array  
  4. (  
  5. [maxrow] => 0  
  6. [maxcol] => 0  
  7. [numRows] => 5  
  8. [numCols] => 4  
  9. [cells] => Array  
  10. (  
  11. [1] => Array  
  12. (  
  13. [1] => 編號  
  14. [2] => 姓名  
  15. [3] => 年齡  
  16. [4] => 學(xué)號  
  17. )  
  18. [2] => Array  
  19. (  
  20. [1] => 1  
  21. [2] => 小紅  
  22. [3] => 22  
  23. [4] => a1000  
  24. )  
  25. [3] => Array  
  26. (  
  27. [1] => 2  
  28. [2] => 小王  
  29. [3] => 33  
  30. [4] => a1001  
  31. )  
  32. [4] => Array  
  33. (  
  34. [1] => 3  
  35. [2] => 小黑  
  36. [3] => 44  
  37. [4] => a1002  
  38. )  
  39. [5] => Array  
  40. (  
  41. [2] => by  
  42. [3] => m.survivalescaperooms.com  
  43. )  
  44. )  
  45. [cellsInfo] => Array  
  46. (  
  47. [1] => Array  
  48. (  
  49. [1] => Array  
  50. (  
  51. [xfIndex] => 15  
  52. )  
  53. [2] => Array  
  54. (  
  55. [xfIndex] => 15  
  56. )  
  57. [3] => Array  
  58. (  
  59. [xfIndex] => 15  
  60. )  
  61. [4] => Array  
  62. (  
  63. [xfIndex] => 15  
  64. )  
  65. )  
  66. [2] => Array  
  67. (  
  68. [1] => Array  
  69. (  
  70. [string] => 1  
  71. [raw] => 1  
  72. [rectype] => unknown  
  73. [format] => %s  
  74. [formatIndex] => 0  
  75. [fontIndex] => 0  
  76. [formatColor] =>  
  77. [xfIndex] => 15  
  78. )  
  79. [2] => Array  
  80. (  
  81. [xfIndex] => 15  
  82. )  
  83. [3] => Array  
  84. (  
  85. [string] => 22  
  86. [raw] => 22  
  87. [rectype] => unknown  
  88. [format] => %s  
  89. [formatIndex] => 0  
  90. [fontIndex] => 0  
  91. [formatColor] =>  
  92. [xfIndex] => 15  
  93. )  
  94. [4] => Array  
  95. (  
  96. [xfIndex] => 15  
  97. )  
  98. )  
  99. [3] => Array  
  100. (  
  101. [1] => Array  
  102. (  
  103. [string] => 2  
  104. [raw] => 2  
  105. [rectype] => unknown  
  106. [format] => %s  
  107. [formatIndex] => 0  
  108. [fontIndex] => 6  
  109. [formatColor] =>  
  110. [xfIndex] => 23  
  111. )  
  112. [2] => Array  
  113. (  
  114. [xfIndex] => 23  
  115. )  
  116. [3] => Array  
  117. (  
  118. [string] => 33  
  119. [raw] => 33  
  120. [rectype] => unknown  
  121. [format] => %s  
  122. [formatIndex] => 0  
  123. [fontIndex] => 6  
  124. [formatColor] =>  
  125. [xfIndex] => 23  
  126. )  
  127. [4] => Array  
  128. (  
  129. [xfIndex] => 23  
  130. )  
  131. )  
  132. [4] => Array  
  133. (  
  134. [1] => Array  
  135. (  
  136. [string] => 3  
  137. [raw] => 3  
  138. [rectype] => unknown  
  139. [format] => %s  
  140. [formatIndex] => 0  
  141. [fontIndex] => 0  
  142. [formatColor] =>  
  143. [xfIndex] => 15  
  144. )  
  145. [2] => Array  
  146. (  
  147. [xfIndex] => 15  
  148. )  
  149. [3] => Array  
  150. (  
  151. [string] => 44  
  152. [raw] => 44  
  153. [rectype] => unknown  
  154. [format] => %s  
  155. [formatIndex] => 0  
  156. [fontIndex] => 0  
  157. [formatColor] =>  
  158. [xfIndex] => 15  
  159. )  
  160. [4] => Array  
  161. (  
  162. [xfIndex] => 15  
  163. )  
  164. )  
  165. [5] => Array  
  166. (  
  167. [2] => Array  
  168. (  
  169. [xfIndex] => 15  
  170. )  
  171. [3] => Array  
  172. (  
  173. [xfIndex] => 24  
  174. [hyperlink] => Array  
  175. (  
  176. [flags] => 23  
  177. [desc] => m.survivalescaperooms.com 
  178.  
  179. [link] => http://m.survivalescaperooms.com  
  180. )  
  181. )  
  182. )  
  183. )  
  184. )  
  185. [1] => Array  
  186. (  
  187. [maxrow] => 0  
  188. [maxcol] => 0  
  189. [numRows] => 0  
  190. [numCols] => 0  
  191. )  
  192. [2] => Array  
  193. (  
  194. [maxrow] => 0  
  195. [maxcol] => 0  
  196. [numRows] => 0  
  197. [numCols] => 0  
  198. )  
  199. )

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 阿拉善左旗| 三门峡市| 黎川县| 烟台市| 田林县| 改则县| 洛浦县| 志丹县| 麻栗坡县| 松溪县| 湖口县| 自治县| 香港 | 安图县| 普兰店市| 集安市| 无极县| 福海县| 东兴市| 阜南县| 灵丘县| 平江县| 乌恰县| 山东省| 新竹县| 枝江市| 木里| 龙南县| 久治县| 无锡市| 新津县| 丹寨县| 武城县| 新沂市| 家居| 怀化市| 华亭县| 扬中市| 内黄县| 桂阳县| 闵行区|