php 导入excel电子表文件

作者:阿圣(Sfan) 发布于:2009-4-28 22:44 Tuesday 分类:Web

   php 导入excel电子表文件,在单位编写导入excel文件时,原来是把excel文件转为cvs文件,在编写php程序导入。

  1. <?php  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. require_once '../Excel/reader.php';  
  8.  
  9.  
  10.  
  11.  
  12.  
  13. // ExcelFile($filename, $encoding);  
  14.  
  15. $data = new Spreadsheet_Excel_Reader();  
  16.  
  17.  
  18.  
  19.  
  20.  
  21. // Set output Encoding.指定中文码  
  22.  
  23. $data->setOutputEncoding('gb2312');  
  24.  
  25.  
  26.  
  27. /***  
  28.  
  29. * if you want you can change 'iconv' to mb_convert_encoding:  
  30.  
  31. * $data->setUTFEncoder('mb');  
  32.  
  33. *  
  34.  
  35. **/ 
  36.  
  37.  
  38.  
  39. /***  
  40.  
  41. * By default rows & cols indeces start with 1  
  42.  
  43. * For change initial index use:  
  44.  
  45. * $data->setRowColOffset(0);  
  46.  
  47. *  
  48.  
  49. **/ 
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57. /***  
  58.  
  59. *  Some function for formatting output.  
  60.  
  61. * $data->setDefaultFormat('%.2f');  
  62.  
  63. * setDefaultFormat - set format for columns with unknown formatting  
  64.  
  65. *  
  66.  
  67. * $data->setColumnFormat(4, '%.3f');  
  68.  
  69. * setColumnFormat - set format for column (apply only to number fields)  
  70.  
  71. *  
  72.  
  73. **/ 
  74.  
  75. // 指定读取的excel文件  
  76.  
  77. $data->read('../uploads/jsxz01.xls');  
  78.  
  79.  
  80.  
  81. /*  
  82.  
  83.  
  84.  
  85.  
  86.  
  87. $data->sheets[0]['numRows'] - count rows  
  88.  
  89. $data->sheets[0]['numCols'] - count columns  
  90.  
  91. $data->sheets[0]['cells'][$i][$j] - data from $i-row $j-column  
  92.  
  93.  
  94.  
  95. $data->sheets[0]['cellsInfo'][$i][$j] - extended info about cell  
  96.  
  97.       
  98.  
  99.     $data->sheets[0]['cellsInfo'][$i][$j]['type'] = "date" | "number" | "unknown"  
  100.  
  101.         if 'type' == "unknown" - use 'raw' value, because  cell contain value with format '0.00';  
  102.  
  103.     $data->sheets[0]['cellsInfo'][$i][$j]['raw'] = value if cell without format   
  104.  
  105.     $data->sheets[0]['cellsInfo'][$i][$j]['colspan']   
  106.  
  107.     $data->sheets[0]['cellsInfo'][$i][$j]['rowspan']   
  108.  
  109. */ 
  110.  
  111.  
  112.  
  113. error_reporting(E_ALL ^ E_NOTICE);  
  114.  
  115. // 循环读取每一个单元值  
  116.  
  117. for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {  
  118.  
  119.     for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {  
  120.  
  121.         echo "\"".$data->sheets[0]['cells'][$i][$j]."\",";  
  122.  
  123.     }  
  124.  
  125.     echo "<br>";  
  126.  
  127.  
  128.  
  129. }  
  130.  
  131.  
  132.  
  133.  
  134.  
  135. //print_r($data);  
  136.  
  137. //print_r($data->formatRecords);  
  138.  
  139. ?>  

 

标签: PHP

et_highlighter

评论:

天天天兰
2009-04-29 12:16
想和你交换一下链接,不知道可以不,我把你加上了
阿圣(Sfan)
2009-04-29 13:18
@天天天兰:...当然可以啊~~ O(*^-^*)O

发表评论:

Powered by emlog 湘ICP备08103487号