zoukankan      html  css  js  c++  java
  • phpexcel 导入 时间格式 和 数值格式 处理

    /**
     * Notes:导入excel文件
     * User: hly
     * Date: 2020/4/14 17:56
     */
    function importXlsx()
    {
        //引入phpexcel
        require getcwd() . '/PHPExcel.php';
        $file_name = 'test.xlsx'; //模拟上传后的文件
        $objReader = PHPExcel_IOFactory::createReader('Excel2007');
        $objPHPExcel = $objReader->load($file_name, $encode = 'utf-8');
        $sheet = $objPHPExcel->getSheet(0);
        $highestRow = $sheet->getHighestRow(); // 取得总行数
        $data = array();
        for ($i = 2; $i <= $highestRow; $i++) {
            $data[$i - 2]['title'] = getCellValue($objPHPExcel->getActiveSheet()->getCell("A" . $i));
            $data[$i - 2]['date_time'] = getCellValue($objPHPExcel->getActiveSheet()->getCell("B" . $i), 'Y-m-d H:i:s');
        }
        exit(json_encode($data));
    }
    
    function getCellValue($cell, $date_format = "Y-m-d H:i:s")
    {
        $value = $cell->getValue();
        if($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_NUMERIC){
            //版本过低的话请加上 getParent 例:$cell->getParent()->getStyle($cell->getCoordinate())->getNumberFormat();
            $cell_style_format = $cell->getStyle($cell->getCoordinate())->getNumberFormat(); //不需要getParent
            $format_code = $cell_style_format->getFormatCode();
            if (preg_match('/^([$[A-Z]*-[0-9A-F]*])*[hmsdy]/i', $format_code)) { //判断是否为日期类型
                $value = gmdate($date_format, PHPExcel_Shared_Date::ExcelToPHP($value)); //格式化日期
            }else{
                $value = PHPExcel_Style_NumberFormat::toFormattedString($value, $format_code); //格式化数字
            }
        }
        return $value;
    }
    
    importXlsx();
    

      

  • 相关阅读:
    python函数--isalpha()方法
    python函数--isdigit()方法
    python函数--isalnum()方法
    python函数--range()方法
    python函数--len()方法
    python函数--介绍
    Linux命令总结--awk命令
    Linux命令总结--pwd命令
    Linux命令总结--rm命令
    Linux命令总结--cp命令
  • 原文地址:https://www.cnblogs.com/handle/p/12699660.html
Copyright © 2011-2022 走看看