Преобразование тегов HTML в основной форматированный текст для Excel - PullRequest
0 голосов
/ 04 июня 2019

Как я могу преобразовать теги HTML, такие как <p> и <ol>, в основной форматированный текст?

У клиента есть несколько таблиц данных, которые он хочет сохранить в CSV (тьфу), которые затем он хочет загрузить в Excel.Некоторые поля содержат теги HTML, в том числе маркированные списки и теги абзацев.Я хотел бы либо правильно отобразить это в Excel (очень маловероятно, что клиент сможет убедить ИХ клиента выполнить код VBA), либо, если будет проще, использовать PHP, чтобы убрать все теги и заменить их символами маркера.и разрывы строк.

Пример одного поля:

<ol style="list-style-type: lower-alpha;">
<li>Blahblahblah lots of text</li>
<li>Even more text.</li>
<li>Yet more text</li>
</ol>

Извините, если это уже было задано, но я мог только найти ответы на противоположный вопрос (bullets -> <li>) или ответы, включающиеобильное количество VBA и другие вещи, выходящие за рамки того, что мне нужно сделать или которые клиент клиента просто не сможет (не сможет) сделать.

1 Ответ

2 голосов
/ 04 июня 2019

Вы можете использовать strip_tags и str_replace.

Замените <li> маркерами, затем удалите все остальные теги html.

$str ='<ol style="list-style-type: lower-alpha;">
<li>Blahblahblah lots of text</li>
<li>Even more text.</li>
<li>Yet more text</li>
</ol>';

echo strip_tags(str_replace("<li>", "•", $str));


/*
•Blahblahblah lots of text
•Even more text.
•Yet more text
*/

https://3v4l.org/7vJuo

...