报此错,说明导入的文件某个单元格格式错误。
1.特殊字符
如,引号,等于号等,会导致Excel把等号后面的当成公式处理。
解决方案:判断是否包含,再加上单引号。
if(strpos($lists[$i-2]['nickname'],'=') === 0){
$lists[$i-2]['nickname'] = "'".$lists[$i-2]['nickname'];
}
2.导入excel,数据引用其他文件
就是导入excel中,某些数据就是引用了其他文件的数据链接,由于换了环境,此时要断开链接。
3.统一处理方案
有时候,报错但不知道包含了什么特殊字符,可在excel中用ctrl+F来查找。再强制转成字符串。如下:
用setCellValueExplicit()把所有的输出到Excel表格的数据强制转为字符串。