该字符串具有html内容。
例如:
<ul>
<li>....</li>
<li>....</li>
<li>....</li>
</ul>
php中是否有任何可以将字符串转换为此类数组的函数
array(
[0] => '<ul>',
[1] => '<li>....</li>',
[2] => '<li>....</li>',
[3] => '</ul>'
)
任何人都可以指导我。
答案 0 :(得分:0)
$a='<ul>
<li>....</li>
<li>....</li>
<li>....</li>
</ul>';
$as = explode("\n", $a);
print_r($as);
然后
Array
(
[0] => <ul>
[1] => <li>....</li>
[2] => <li>....</li>
[3] => <li>....</li>
[4] => </ul>
)
答案 1 :(得分:0)
$str
是您原来的字符串。
$array = explode("\n", $str);
答案 2 :(得分:0)
这取决于你实际上要做什么。
如果你真的试图按行分隔字符串,那就相当简单了:
$array = explode("\n", $htmlString);
foreach ($array as $key => $value) {
$array[$key] = trim($value);
}
print_r($array); // Use this to dump out the value of $array.
但是,如果您尝试以有意义的方式解析HTML,那么就不那么容易了。您将需要使用DOMDocument或专用的HTML / XML解析器。
原因,请阅读:
答案 3 :(得分:0)
您可以使用SimpleXML解析HTML,然后将其转换为数组
$result = (array) simplexml_load_string($htmlDocument);
http://www.php.net/manual/en/function.simplexml-load-string.php
$ul = <<<HTML
<ul>
<li>....</li>
<li>....</li>
<li>....</li>
</ul>
HTML;
$result = (array) simplexml_load_string($ul);
print_r($result);
答案 4 :(得分:0)
我认为你需要一个用于通用解决方案的html praser
尝试链接 http://code.google.com/p/php-html2array/
下载类文件 http://code.google.com/p/php-html2array/downloads/detail?name=class.htmlParser%20v1.02.zip&can=2&q=