花了几个小时处理PHPExcel错误Worksheet!A2->公式错误:意外的,我发现
$sheet->setCellValue($col . $row, $value);
如果我尝试将字符串= ER =,s.r.o。插入单元格,则会引发此错误。当我先删除=符号后,它开始起作用。但是看起来很奇怪= ER =是真实公司的名称。我想将其作为字符串写入单元格。
问题是哪些标志以及应如何转义,以避免PHPExcel的这种行为?我希望PHPExcel能够摆脱这种情况。就像我将数据发送到数据库一样...
您可能需要将值用引号引起来,以避免将前导等号视为总和的开始。使用:
$sheet->setCellValue($col . $row, '"' . $value . '"');
如果引号引起日期和数字等其他值的问题,您可以测试$value
以查看它是否以=
开头,如果确实加上引号,则不要理会它。
$sheet->setCellValue($col . $row,(substr($value,0,1) == '=' ? '"' . $value . '"' : $value));