Erlo

Laravel 使用 maatwebsite/excel 时长数字出现科学计数法的解决办法

收藏 2022-03-15 10:42:26   120   博客园
页面报错/反馈
点赞

在使用 maatwebsite/excel 包导出Excel的时候,有的单元格里会存放手机号等一大串的数字,这一串数字会被Excel软件处理为科学计数法,在后续处理数据的时候会产生不小的麻烦,一个个去调会很麻烦,有幸在度娘上搜到了一个方法,奈何原网站打不开了,所以在这里记录一下这个问题的解决办法。

使用maatwebsite/excel的教程可以参考这篇文章

Laravel 使用 maatwebsite/Excel 3.1 导入导出 Excel

言归正传,首先找到 vendor/maatwebsite/excel/src/DefaultValueBinder.php 文件
打开后的文件内容是这样的:

引入use PhpOfficePhpSpreadsheetCellDataType类

在bindValue方法里添加

        if (strlen($value) > 10) {
            $cell->setValueExplicit($value, DataType::TYPE_STRING);
            return true;
        }

使用PHPstorm的时候会提示This file dose not belong to the project ,选择第一个就好了。

修改后的文件是这样子的:

 10) {
            $cell->setValueExplicit($value, DataType::TYPE_STRING);
            return true;
        }

        return parent::bindValue($cell, $value);
    }
}

登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认