<?php
$textbody = "
<ul>
List item 1
List item 2
List item 3
</ul>
";
$content = new DOMDocument;
$content->loadHTML($textbody);
//get DOMNodeList
$ulList = $content->getElementsByTagName("ul");
//loop DOMNodeList to get nodes
foreach ( $ulList as $ul ) {
//get the lines between <ul>
$lines = explode("\n",$ul->firstChild->wholeText);
//work on each line
foreach ($lines as $line) {
$newnode = $ul->appendChild($content->createElement('li',$line));
}
}
echo $textbody = $content->saveHTML();
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body><ul>
List item 1
List item 2
List item 3
<li><li>List item 1</li><li>List item 2</li><li>List item 3</li><li></ul>
</body></html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body><ul>
List item 1
List item 2
List item 3
<li><li>List item 1</li><li>List item 2</li><li>List item 3</li><li></ul></body></html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body><ul>
List item 1
List item 2
List item 3
<li>
<li>List item 1</li>
<li>List item 2</li>
<li>List item 3</li>
<li>
</ul></body></html>
Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.9
Fatal error: Cannot instantiate non-existent class: domdocument in /in/aqYEB on line 10
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Cannot instantiate non-existent class: domdocument in /in/aqYEB on line 10