Home >php教程 >php手册 >php ExcelReader 读取Excel类

php ExcelReader 读取Excel类

WBOY
WBOYOriginal
2016-05-24 18:31:052095browse

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

<?php
$allow_url_override = 1; // set to 0 to not allow changed via post or get
if (!$allow_url_override || !isset($file_to_include)) {
    $file_to_include = "111cn.net.xls";
}
if (!$allow_url_override || !isset($max_rows)) {
    $max_rows = 0; //use 0 for no max
    
}
if (!$allow_url_override || !isset($max_cols)) {
    $max_cols = 5; //use 0 for no max
    
}
if (!$allow_url_override || !isset($debug)) {
    $debug = 0; //1 for on 0 for off
    
}
if (!$allow_url_override || !isset($force_nobr)) {
    $force_nobr = 1; //force the info in cells not to wrap unless stated explicitly (newline)
    
}
require_once &#39;www.phprm.com/reader.php&#39;;
$data = new spreadsheet_excel_reader();
$data->setoutputencoding(&#39;cpa25a&#39;);
$data->read($file_to_include);
error_reporting(e_all ^ e_notice);
echo " 
<style> 
.table_data 
{ 
 border-style:ridge; 
 border-width:1; 
} 
.tab_base 
{ 
 background:#c5d0dd; 
 font-weight:bold; 
 border-style:ridge; 
 border-width:1; 
 cursor:pointer; 
} 
.table_sub_heading 
{ 
 background:#cccccc; 
 font-weight:bold; 
 border-style:ridge; 
 border-width:1; 
} 
.table_body 
{ 
 background:#f0f0f0; 
 font-wieght:normal; 
 font-size:12; 
 font-family:sans-serif; 
 border-style:ridge; 
 border-width:1; 
 border-spacing: 0px; 
 border-collaps教程e: collapse; 
} 
.tab_loaded 
{ 
 background:#222222; 
 color:white; 
 font-weight:bold; 
 border-style:groove; 
 border-width:1; 
 cursor:pointer; 
} 
</style> 
";
function make_alpha_from_numbers($number) {
    $numeric = "abcdefghijklmnopqrstuvwxyz";
    if ($number < strlen($numeric)) {
        return $numeric[$number];
    } else {
        $dev_by = floor($number / strlen($numeric));
        return "" . make_alpha_from_numbers($dev_by - 1) . make_alpha_from_numbers($number - ($dev_by * strlen($numeric)));
    }
}
echo "<script language=&#39;javascript&#39;> 
var sheet_html = array(); ";
for ($sheet = 0; $sheet < count($data->sheets); $sheet++) {
    $table_output[$sheet].= "<table class=&#39;table_body&#39;> 
 <tr> 
  <td> </td>";
    for ($i = 0; $i < $data->sheets[$sheet][&#39;numcols&#39;] && ($i <= $max_cols || $max_cols == 0); $i++) {
        $table_output[$sheet].= "<td class=&#39;table_sub_heading&#39; align=center>" . make_alpha_from_numbers($i) . "</td>";
    }
    for ($row = 1; $row <= $data->sheets[$sheet][&#39;numrows&#39;] && ($row <= $max_rows || $max_rows == 0); $row++) {
        $table_output[$sheet].= "<tr><td class=&#39;table_sub_heading&#39;>" . $row . "</td>";
        for ($col = 1; $col <= $data->sheets[$sheet][&#39;numcols&#39;] && ($col <= $max_cols || $max_cols == 0); $col++) {
            if ($data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;colspan&#39;] >= 1 && $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;rowspan&#39;] >= 1) {
                $this_cell_colspan = " colspan=" . $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;colspan&#39;];
                $this_cell_rowspan = " rowspan=" . $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;rowspan&#39;];
                for ($i = 1; $i < $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;colspan&#39;]; $i++) {
                    $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col + $i][&#39;dontprint&#39;] = 1;
                }
                for ($i = 1; $i < $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;rowspan&#39;]; $i++) {
                    for ($j = 0; $j < $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;colspan&#39;]; $j++) {
                        $data->sheets[$sheet][&#39;cellsinfo&#39;][$row + $i][$col + $j][&#39;dontprint&#39;] = 1;
                    }
                }
            } else if ($data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;colspan&#39;] >= 1) {
                $this_cell_colspan = " colspan=" . $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;colspan&#39;];
                $this_cell_rowspan = "";
                for ($i = 1; $i < $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;colspan&#39;]; $i++) {
                    $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col + $i][&#39;dontprint&#39;] = 1;
                }
            } else if ($data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;rowspan&#39;] >= 1) {
                $this_cell_colspan = "";
                $this_cell_rowspan = " rowspan=" . $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;rowspan&#39;];
                for ($i = 1; $i < $data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;rowspan&#39;]; $i++) {
                    $data->sheets[$sheet][&#39;cellsinfo&#39;][$row + $i][$col][&#39;dontprint&#39;] = 1;
                }
            } else {
                $this_cell_colspan = "";
                $this_cell_rowspan = "";
            }
            if (!($data->sheets[$sheet][&#39;cellsinfo&#39;][$row][$col][&#39;dontprint&#39;])) {
                $table_output[$sheet].= "<td class=&#39;table_data&#39; $this_cell_colspan $this_cell_rowspan> ";
                if ($force_nobr) {
                    $table_output[$sheet].= "<nobr>";
                }
                $table_output[$sheet].= nl2br(htmlentities($data->sheets[$sheet][&#39;cells&#39;][$row][$col]));
                if ($force_nobr) {
                    $table_output[$sheet].= "</nobr>";
                }
                $table_output[$sheet].= "</td>";
            }
        }
        $table_output[$sheet].= "</tr>";
    }
    $table_output[$sheet].= "</table>";
    $table_output[$sheet] = str_replace(" ", "", $table_output[$sheet]);
    $table_output[$sheet] = str_replace(" ", "", $table_output[$sheet]);
    $table_output[$sheet] = str_replace(" ", " ", $table_output[$sheet]);
    if ($debug) {
        $debug_output = print_r($data->sheets[$sheet], true);
        $debug_output = str_replace(" ", "n", $debug_output);
        $debug_output = str_replace(" ", "r", $debug_output);
        $table_output[$sheet].= "<pre class="brush:php;toolbar:false">$debug_output
";     }     echo "sheet_html[$sheet] = "$table_output[$sheet]"; "; } echo "  function change_tabs(sheet)  {   //alert('sheet_tab_' + sheet);   for(i=0;isheets) , ";i++)   {    document.getelementbyid('sheet_tab_' + i).classname = 'tab_base';   }   document.getelementbyid('table_loader_div').innerhtml=sheet_html[sheet];   document.getelementbyid('sheet_tab_' + sheet).classname = 'tab_loaded';  }  "; echo "    "; for ($sheet = 0; $sheet sheets); $sheet++) {     echo ""; } echo ""; echo "
", $data->boundsheets[$sheet]['name'], "
 
www.phprm.com
  <script>//开源代码phprm.com change_tabs(0); </script>"; //echo ""; /* echo "
"; 
print_r($data); 
echo "
";  */

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


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn