PHPEXCEL类的导入使用

1、去http://phpexcel.codeplex.com/下载phpexcel类包
在根目录下:拷贝phpexcel类包
我改为名 phpexcel
改名以后的目录结构为
phpexcel
    --PHPExcel
    --PHPExcel.php

2、在根目录建立一个测试包Test
1>建立一个mytest.html文件
2>建立一个mytest.php文件
load($uploadfile); 
        $sheet = $objPHPExcel->getSheet(0); 
        $highestRow = $sheet->getHighestRow();           //取得总行数 
        $highestColumn = $sheet->getHighestColumn(); //取得总列数
        
        /* 第一种方法
        //循环读取excel文件,读取一条,插入一条
        for($j=1;$j<=$highestRow;$j++)                        //从第一行开始读取数据
        { 
            for($k='A';$k<=$highestColumn;$k++)            //从A列读取数据
            { 
                //
                这种方法简单,但有不妥,以''合并为数组,再分割为字段值插入到数据库
                实测在excel中,如果某单元格的值包含了导入的数据会为空        
                //
                $str .=$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue().'';//读取单元格
            } 
            //echo $str; die();
            //explode:函数把字符串分割为数组。
            $strs = explode("",$str);
            $sql = "INSERT INTO te(`1`, `2`, `3`, `4`, `5`) VALUES (
            '{$strs[0]}',
            '{$strs[1]}',
            '{$strs[2]}',
            '{$strs[3]}',
            '{$strs[4]}')";
            //die($sql);
            if(!mysql_query($sql))
            {
                return false;
                echo 'sql语句有误';
            }
            $str = "";
        }  
        unlink($uploadfile); //删除上传的excel文件
        $msg = "导入成功!";
        */
        /* 第二种方法*/
        $objWorksheet = $objPHPExcel->getActiveSheet();
        $highestRow = $objWorksheet->getHighestRow(); 
       // echo 'highestRow='.$highestRow;
       // echo "
"; $highestColumn = $objWorksheet->getHighestColumn(); $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);//总列数 // echo 'highestColumnIndex='.$highestColumnIndex; // echo "
"; $headtitle=array(); // for ($row = 1;$row <= $highestRow;$row++) //从第一行开始读取数据 for ($row = 2;$row <= $highestRow;$row++) //从第二行开始读取数据,一般第一行作为名称 { $strs=array(); //注意highestColumnIndex的列数索引从0开始 for ($col = 0;$col < $highestColumnIndex;$col++) { if($col=='6'){//指定g列为时间所在列 第七列 $strs[$col] = gmdate("Y-m-d", PHPExcel_Shared_Date::ExcelToPHP($objWorksheet->getCellByColumnAndRow($col, $row)->getValue())); }else{ $strs[$col] =$objWorksheet->getCellByColumnAndRow($col, $row)->getValue(); } } $mylist[$row]['name'] = $strs[0]; $mylist[$row]['spec'] = $strs[1]; $mylist[$row]['unit'] = $strs[2]; $mylist[$row]['nums'] = $strs[3]; $mylist[$row]['brand'] = $strs[4]; $mylist[$row]['note'] = $strs[5]; $mylist[$row]['totime'] = $strs[6]; $mylist[$row]['catid'] = $strs[7]; $mylist[$row]['catname'] = $strs[8]; } $msg = $mylist; } else { $msg = "导入失败!"; } return $msg; } /***************定义导入Excel文件的方法*****************************/ ?>
测试表格test.xls

数据如下:

PHPEXCEL类的导入使用_第1张图片

你可能感兴趣的:(PHP)