我使用PhpExcel将我的一些数据库导出到csv中。 因为我有一些损坏的数据,所以检查它们并在必要时显示错误。
所以当一个字段包含我的分隔符时,我希望在我的错误消息中显示(否则会混淆我的分页):
$objWriter = PHPExcel_IOFactory::createWriter($this->_objErrorPHPExcel, 'CSV');
$objWriter->setDelimiter('|');
$objWriter->setEnclosure( '' );
$objWriter->setUseBOM( true );
$objWriter->setPreCalculateFormulas( false );
$objWriter->save( $strOutputFile );
unset( $objWriter );
当我保存我的错误消息时(对于像em | tor@email.com这样的电子邮件地址):
$this->$strExcelFileName->getActiveSheet()->setCellValueExplicit('F' . $intRow, $strError );
而不是保存在我的F单元格中
电子邮件包含“|”字符
我结束了
在F中电子邮件包含
,
G中的|
字符。
当我在电子表格中保存电子邮件时,我遇到了同样的问题,它被切成2个单元格。
感谢您的时间和建议:)
答案 0 :(得分:0)
解决方案由DaveRandom提供! :
我相当肯定你的问题会与之相关 $ objWriter-> setEnclosure(''); - 您指定一个空字段 enclosure,这意味着没有办法引用一个字符串 包含一个分隔符,显然它将被视为一个字段 分隔符,而不是文字字符。我想你需要这样做 类似于$ objWriter-> setEnclosure('“');