2

当前的 PHPExcel 现在可以在 excel 单元格中格式化 HTML 标记吗?这就像这里的问题

我有一个来自数据库的表,其中的字段包含带有 html 标签的字符串

即<b>你好</b>

我希望它在excel中输出不是纯文本,而是像这样的你好

是否有任何 php to excel 库可以做到这一点?任何想法?提前致谢

4

2 回答 2

7

不!PHPExcel 没有任何内置逻辑来执行此操作;我知道的任何其他图书馆也没有。

您需要自己编写一些代码来处理从 HTML 到富文本运行的转换.... HTML 阅读器中有一些逻辑,您可以将其用作此基础。

编辑

自编写此答案以来,PHPExcel 库中添加了一个帮助器类,该类将采用简单的 html 标记的基本块并将其转换为可以设置为单元格值的富文本对象。这是一个PHPExcel_Helper_HTML带有方法的类,它toRichTextObject()接受一个 html 块的参数并返回一个富文本对象。在Examples/42richText.php中有一些例子展示了它的使用

$html = '<font color="#0000ff">
<h1 align="center">My very first example of rich text<br />generated from html markup</h1>
<p>
<font size="14" COLOR="rgb(0,255,128)">
<b>This block</b> contains an <i>italicized</i> word;
while this block uses an <u>underline</u>.
</font>
</p>
<p align="right"><font size="9" color="red">
I want to eat <ins><del>healthy food</del> <strong>pizza</strong></ins>.
</font>
';

$wizard = new PHPExcel_Helper_HTML;
$richText = $wizard->toRichTextObject($html);

虽然不是所有的标记都受支持,并且它不使用样式表,并且只有一组有限的内联样式元素,但它与基本的标记元素配合得很好。

于 2013-07-25T08:32:16.103 回答
-1

我在这件事上花了很多时间。但我没有得到目标。Thier 是不可能像这样写并按我们的意愿获取数据的。我喜欢马克的回答,试试你自己的脚本。

于 2016-09-15T13:09:54.677 回答