thinkphp中使用PHPEXCEL导入数据

导入方法比较简单 但必须考虑到Excel本身单元格格式问题 例如以0开头的字符串读出来被去掉了前导0 成为float型而丢失一位 必须进行处理

<?php
/**
 * Author lizhaoyao
 * Add_Time:2015-08-26
 * [php_excel_import 用户导入Excel]
 * @param  [type] $file_name [要导入的文件路径]
 * @return [array]           [返回数组]
 */
function php_excel_import($file_name)
{
    if($file_name==""){die("导入的文件不能为空");}
    Vendor('Classes.PHPExcel');//导入扩展类
    $objPHPExcel = PHPExcel_IOFactory::load ( $file_name );//调用方法
    $sheet = $objPHPExcel->getSheet ( 0 );
    $highestRow = $sheet->getHighestRow ();//获取行
    $highestColumn = $sheet->getHighestColumn ();//获取列
    for($j = 2; $j <= $highestRow; $j ++){
        for($k = 'A'; $k <= $highestColumn; $k ++) {
            $array[$j][$k] = (string)$objPHPExcel->getActiveSheet ()->getCell ( "$k$j" )->getValue ();
        }
    }
    return empty($array)?array():$array;//返回数据
}

?>

这种方法导入的文本型Excel会变为是string类型的php变量 形成二维数组

posted @ 2015-08-28 08:56  李照耀  阅读(307)  评论(0编辑  收藏  举报