PHP 导出 Excel 报错: Formula Error: An unexpected error occurred
1. 问题描述
一个项目中用到了需要将用户信息导出到 Excel ,最初写完测试是正常的,如下图所示
在后来的某一天,导出手机号突然出现了报错,如下图所示
通过提示我们将问题定位在了 B 列 4867 行。
这是因为在 excel 中,单元格中的值如果是以 “=” 开头,则说明这个单元格是根据其他单元格的值算出来的,“=” 后面必须跟着一个合法的表达式。所以,解决方案就是这个单元格的值不让它以 “=” 开头
# Formula Error: An unexpected error occurred 公式错误:发生意外错误
{"code":0,"msg":"用户手机号!B4867 -> Formula Error: An unexpected error occurred"}
2. 解决方法
找到将值写入到单元格的那行代码,修改前:
$sheet->setCellValueByColumnAndRow(2, $start, $value);
修改后:
if ( $value && strpos($value, '=') === 0 ) {
// 在 = 前面加个单引号
$value = "'" . $value;
}
$sheet->setCellValueByColumnAndRow(2, $start, $value);
现在 Excel 表格就可以正常导出了
本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!
从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!
本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。
本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。
若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。