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

php ExcelReader 读取Excel类

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

这是一款开源的php代码,ExcelReader是专业地excel表进行读写操作的,下面我们来看一款ExcelReader读取phpfensi.com.xls工作表实例吧,代码如下:

  1. $allow_url_override = 1; // set to 0 to not allow changed via post or get 
  2. if(!$allow_url_override || !isset($file_to_include)) 
  3.  $file_to_include = "111cn.net.xls"
  4. if(!$allow_url_override || !isset($max_rows)) 
  5.  $max_rows = 0; //use 0 for no max 
  6. if(!$allow_url_override || !isset($max_cols)) 
  7.  $max_cols = 5; //use 0 for no max 
  8. if(!$allow_url_override || !isset($debug)) 
  9.  $debug = 0;  //1 for on 0 for off 
  10. if(!$allow_url_override || !isset($force_nobr)) 
  11.  $force_nobr = 1;  //force the info in cells not to wrap unless stated explicitly (newline) 
  12. require_once 'www.phpfensi.com/reader.php'
  13. $data = new spreadsheet_excel_reader(); 
  14. $data->setoutputencoding('cpa25a'); 
  15. $data->read($file_to_include); 
  16. error_reporting(e_all ^ e_notice); 
  17. echo " 
  18. <style> 
  19. .table_data 
  20.  border-style:ridge; 
  21.  border-width:1; 
  22. .tab_base 
  23.  background:#c5d0dd; 
  24.  font-weight:bold; 
  25.  border-style:ridge; 
  26.  border-width:1; 
  27.  cursor:pointer; 
  28. .table_sub_heading 
  29.  background:#cccccc; 
  30.  font-weight:bold; 
  31.  border-style:ridge; 
  32.  border-width:1; 
  33. .table_body 
  34.  background:#f0f0f0; 
  35.  font-wieght:normal; 
  36.  font-size:12; 
  37.  font-family:sans-serif; 
  38.  border-style:ridge; 
  39.  border-width:1; 
  40.  border-spacing: 0px; 
  41.  border-collaps教程e: collapse; 
  42. .tab_loaded 
  43.  background:#222222; 
  44.  color:white; 
  45.  font-weight:bold; 
  46.  border-style:groove; 
  47.  border-width:1; 
  48.  cursor:pointer; 
  49. </style> 
  50. "; 
  51. function make_alpha_from_numbers($number
  52.  $numeric = "abcdefghijklmnopqrstuvwxyz"
  53.  if($number<strlen($numeric)) 
  54.  { 
  55.   return $numeric[$number]; 
  56.  } 
  57.  else 
  58.  { 
  59.   $dev_by = floor($number/strlen($numeric)); 
  60.   return "" . make_alpha_from_numbers($dev_by-1) . make_alpha_from_numbers($number-($dev_by*strlen($numeric))); 
  61.  } 
  62. echo "<script language='javascript'
  63. var sheet_html = array(); "; 
  64. for($sheet=0;$sheet<count($data->sheets);$sheet++) 
  65.  $table_output[$sheet] .= "<table class='table_body'
  66.  <tr> 
  67.   <td>&nbsp;</td>"; 
  68.  for($i=0;$i<$data->sheets[$sheet]['numcols']&&($i<=$max_cols||$max_cols==0);$i++) 
  69.  { 
  70.   $table_output[$sheet] .= "<td class='table_sub_heading' align=center>" . make_alpha_from_numbers($i) . "</td>"
  71.  } 
  72.  for($row=1;$row<=$data->sheets[$sheet]['numrows']&&($row<=$max_rows||$max_rows==0);$row++) 
  73.  { 
  74.   $table_output[$sheet] .= "<tr><td class='table_sub_heading'>" . $row . "</td>"
  75.   for($col=1;$col<=$data->sheets[$sheet]['numcols']&&($col<=$max_cols||$max_cols==0);$col++) 
  76.   { 
  77.    if($data->sheets[$sheet]['cellsinfo'][$row][$col]['colspan'] >=1 && $data->sheets[$sheet]['cellsinfo'][$row][$col]['rowspan'] >=1) 
  78.    { 
  79.     $this_cell_colspan = " colspan=" . $data->sheets[$sheet]['cellsinfo'][$row][$col]['colspan']; 
  80.     $this_cell_rowspan = " rowspan=" . $data->sheets[$sheet]['cellsinfo'][$row][$col]['rowspan']; 
  81.     for($i=1;$i<$data->sheets[$sheet]['cellsinfo'][$row][$col]['colspan'];$i++) 
  82.     { 
  83.      $data->sheets[$sheet]['cellsinfo'][$row][$col+$i]['dontprint']=1; 
  84.     } 
  85.     for($i=1;$i<$data->sheets[$sheet]['cellsinfo'][$row][$col]['rowspan'];$i++) 
  86.     { 
  87.      for($j=0;$j<$data->sheets[$sheet]['cellsinfo'][$row][$col]['colspan'];$j++) 
  88.      { 
  89.       $data->sheets[$sheet]['cellsinfo'][$row+$i][$col+$j]['dontprint']=1; 
  90.      } 
  91.     } 
  92.    } 
  93.    else if($data->sheets[$sheet]['cellsinfo'][$row][$col]['colspan'] >=1) 
  94.    { 
  95.     $this_cell_colspan = " colspan=" . $data->sheets[$sheet]['cellsinfo'][$row][$col]['colspan']; 
  96.     $this_cell_rowspan = ""
  97.     for($i=1;$i<$data->sheets[$sheet]['cellsinfo'][$row][$col]['colspan'];$i++) 
  98.     { 
  99.      $data->sheets[$sheet]['cellsinfo'][$row][$col+$i]['dontprint']=1; 
  100.     } 
  101.    } 
  102.    else if($data->sheets[$sheet]['cellsinfo'][$row][$col]['rowspan'] >=1) 
  103.    { 
  104.     $this_cell_colspan = ""
  105.     $this_cell_rowspan = " rowspan=" . $data->sheets[$sheet]['cellsinfo'][$row][$col]['rowspan']; 
  106.     for($i=1;$i<$data->sheets[$sheet]['cellsinfo'][$row][$col]['rowspan'];$i++) 
  107.     { 
  108.      $data->sheets[$sheet]['cellsinfo'][$row+$i][$col]['dontprint']=1; 
  109.     } 
  110.    } 
  111.    else 
  112.    { 
  113.     $this_cell_colspan = ""
  114.     $this_cell_rowspan = ""
  115.    } 
  116.    if(!($data->sheets[$sheet]['cellsinfo'][$row][$col]['dontprint'])) 
  117.    { 
  118.     $table_output[$sheet] .= "<td class='table_data' $this_cell_colspan $this_cell_rowspan>&nbsp;"
  119.     if($force_nobr
  120.     { 
  121.      $table_output[$sheet] .= "<nobr>"
  122.     } 
  123.     $table_output[$sheet] .= nl2br(htmlentities($data->sheets[$sheet]['cells'][$row][$col])); 
  124.     if($force_nobr
  125.     { 
  126.      $table_output[$sheet] .= "</nobr>"
  127.     } 
  128.     $table_output[$sheet] .= "</td>"
  129.    } 
  130.   } 
  131.   $table_output[$sheet] .= "</tr>"
  132.  } 
  133.  $table_output[$sheet] .= "</table>"
  134.  $table_output[$sheet] = str_replace(" ","",$table_output[$sheet]); 
  135.  $table_output[$sheet] = str_replace(" ","",$table_output[$sheet]); 
  136.  $table_output[$sheet] = str_replace(" "," ",$table_output[$sheet]); 
  137.  if($debug
  138.  { 
  139.   $debug_output = print_r($data->sheets[$sheet],true); 
  140.   $debug_output = str_replace(" ","\n",$debug_output); 
  141.   $debug_output = str_replace(" ","\r",$debug_output); 
  142.   $table_output[$sheet] .= "<pre>$debug_output</pre>"
  143.  } 
  144.  echo "sheet_html[$sheet] = "$table_output[$sheet]"; "
  145. echo " 
  146. function change_tabs(sheet) 
  147.  //alert('sheet_tab_' + sheet); 
  148.  for(i=0;i<" , count($data->sheets) , ";i++) 
  149.  { 
  150.   document.getelementbyid('sheet_tab_' + i).classname = 'tab_base'
  151.  } 
  152.  document.getelementbyid('table_loader_div').innerhtml=sheet_html[sheet]; 
  153.  document.getelementbyid('sheet_tab_' + sheet).classname = 'tab_loaded'
  154. </script>"; 
  155. echo " 
  156. <table class='table_body' name='tab_table'
  157. <tr>"; 
  158. for($sheet=0;$sheet<count($data->sheets);$sheet++) 
  159.  echo "<td class='tab_base' id='sheet_tab_$sheet' align=center 
  160.   onmousedown="change_tabs($sheet);">", $data->boundsheets[$sheet]['name'] , "</td>"; 
  161. echo  
  162. "<tr>"
  163. echo "</table> 
  164. <div id=table_loader_div>www.phpfensi.com</div> 
  165. <script language='javascript'>//开源代码phpfensi.com 
  166. change_tabs(0); 
  167. </script>"; 
  168. //echo "<iframe name=table_loader_iframe src='about:blank' width=100 height=100></iframe>"; 
  169. /* 
  170. echo "<pre>"; 
  171. print_r($data); 
  172. echo "</pre>"; 
  173. */ 

excelreader这个类你可以到官网去下载.

Tags: ExcelReader 读取Excel类

分享到: