如何使用php以excel格式导出带有换行符的值


How to export a value with newline character in excel format using php?

我正在使用PHPExcel将数据从数据库导出到excel文件。到目前为止,它运行得很好。我的问题是,我有一个字符串值,我想在换行符中分隔,但必须包含在1个单元格中。我该怎么做?我已经成功导出了它,但那个单元格中的数据只占用了一行。

有人能帮我吗?提前谢谢。

foreach ($documents as $document){
    $excel->getActiveSheet()->setCellValueByColumnAndRow(0,$row,$document->getSubject());
    $excel->getActiveSheet()->setCellValueByColumnAndRow(1,$row,$document->getDescription());
    $excel->getActiveSheet()->setCellValueByColumnAndRow(2,$row,$document->getFrom());
    $excel->getActiveSheet()->setCellValueByColumnAndRow(3,$row,$document->getDateReceived());
    $excel->getActiveSheet()->setCellValueByColumnAndRow(4,$row,$document->getDueRD());
    $excel->getActiveSheet()->setCellValueByColumnAndRow(5,$row,$document->getDueDate());
    $excel->getActiveSheet()->setCellValueByColumnAndRow(6,$row,$document->getDue15Days());
    $excel->getActiveSheet()->setCellValueByColumnAndRow(7,$row,$document->getChat());
    $row++;
}

最后一行$document->getChat()是一个包含换行符"''n"的字符串。

示例:"名称:消息''n名称2:消息''n名称:消息"将变为:

"名称:消息"

"名称2:消息"

"名称:消息"

在一个excel列中。

像这样尝试

$excel->getActiveSheet()->setCellValueByColumnAndRow(7,$row,trim(preg_replace('/'s+/', ' ', $document->getChat()));