thinkphp整合系列之phpexcel导入excel数据

本文介绍了一种使用PHPExcel库在ThinkPHP框架中导入Excel文件的方法。该方法支持CSV和XLS格式,通过创建一个导入函数实现对不同格式的Excel文件进行读取并返回数组形式的内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:导入phpexcel
/ThinkPHP/Library/Vendor/PHPExcel
二:导入excel的函数

/**
 * 导入excel文件
 * @param  string $file excel文件路径
 * @return array        excel文件内容数组
 */
function import_excel($file){
    // 判断文件是什么格式
    $type = pathinfo($file);
    $type = strtolower($type["extension"]);
    $type=$type==='csv' ? $type : 'Excel5';
    ini_set('max_execution_time', '0');
    Vendor('PHPExcel.PHPExcel');
    // 判断使用哪种格式
    $objReader = PHPExcel_IOFactory::createReader($type);
    $objPHPExcel = $objReader->load($file);
    $sheet = $objPHPExcel->getSheet(0);
    // 取得总行数
    $highestRow = $sheet->getHighestRow();
    // 取得总列数
    $highestColumn = $sheet->getHighestColumn();
    //循环读取excel文件,读取一条,插入一条
    $data=array();
    //从第一行开始读取数据
    for($j=1;$j<=$highestRow;$j++){
        //从A列读取数据
        for($k='A';$k<=$highestColumn;$k++){
            // 读取单元格
            $data[$j][]=$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue();
        }
    }
    return $data;
}

三:调用示例
先用之前文章生成excel的方法分别生成了xls和csv格式的表格放在了/Upload/excel/目录下;
当然正常导入的话;是需要用户上传excel文件的;
这里就略过上传的过程;直接写的是传入文件路径调用函数的了;
/Application/Home/Controller/IndexController.class.php

    /**
     * 导入excel数据
     */
    public function import(){
        // 导入csv格式的数据
        $data=import_excel('./Upload/excel/simple.csv');
        p($data);
        // 导入xls格式的数据
        $data=import_excel('./Upload/excel/simple.xls');
        p($data);die;
    }

 

转载于:https://my.oschina.net/zhangshizhong/blog/1069054

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值