我正在使用PHPExcel将数据从我的数据库提取到有组织的Excel工作表中。除了一件事,一切都很好。我的数据库条目有时可能包含 HTML 标记,如 <strong></strong>
、<BR>
、<p></p>
等......所以我设法让这个 PHP 行工作,这对于将我的<BR>
标记替换为空格非常有用。
$data = str_replace("<br />", "'n", $data);
$data = str_replace("<br/>", "'n", $data);
$data = str_replace("<br>", "'n", $data);
但是,当我尝试执行以下操作时,它什么也没做。我期待它会使文本加粗。
$data = str_replace("<strong>", '&B', $data);
我在这些论坛上读到,最好使用preg_replace并为我需要替换的所有 HTML 标记设置一个数组。对于我的生活,我不明白如何使用preg_replace。有人请给我一些建议,在导出时替换<strong>
和</strong>
加粗等标记的最佳方法是什么,这将不胜感激。
'&B'
只会为打印的页眉和页脚设置粗体文本,如文档标题为Setting the print header and footer of a worksheet
标题为 Formatting cells
的部分描述了单元格内容的格式,如下所示:
$objPHPExcel->getActiveSheet()->getCell('A1')->setValue('bold');
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true);
或者(如果您的内容包含实际标记(使用富文本对象(如果您只想将部分文本设置为粗体(。
$objRichText = new PHPExcel_RichText();
$objRichText->createText('This text is ');
$objBoldTextRun = $objRichText->createTextRun('bold');
$objBoldTextRun->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getCell('B1')->setValue($objRichText);
但您需要解析标记以将其转换为富文本对象