PHPDOM:将HTML列表解析为数组?

PHPDOM:将HTML列表解析为数组?,php,dom,php-5.3,html-parsing,Php,Dom,Php 5.3,Html Parsing,我有下面的HTML字符串,我想把它转换成一个数组 $string = ' <a href="#" class="something">1</a> <a href="#" class="something">2</a> <a href="#" class="something">3</a> <a href="#" class="something">4</a> '; 但是,这会产生以下输出: Arra

我有下面的HTML字符串,我想把它转换成一个数组

$string = '
<a href="#" class="something">1</a>
<a href="#" class="something">2</a>
<a href="#" class="something">3</a>
<a href="#" class="something">4</a>
';
但是,这会产生以下输出:

Array ( [0] => 1 [1] => 2 [2] => 2 [3] => 4)
但我在寻找这个结果:

Array ( 
[0] => <a href="#" class="something">1</a>
[1] => <a href="#" class="something">2</a> 
[2] => <a href="#" class="something">3</a>
[3] => <a href="#" class="something">4</a>
)
数组(
[0] => 
[1] =>  
[2] => 
[3] => 
)
这可能吗?

将节点传递到以获取其HTML表示形式:

$string = '
<a href="#" class="something">1</a>
<a href="#" class="something">2</a>
<a href="#" class="something">3</a>
<a href="#" class="something">4</a>
';

$dom = new DOMDocument;
$dom->loadHTML($string);
foreach($dom->getElementsByTagName('a') as $node)
{
    $array[] = $dom->saveHTML($node);
}

print_r($array);
$string='1!'
';
$dom=新的DOMDocument;
$dom->loadHTML($string);
foreach($dom->getElementsByTagName('a')作为$node)
{
$array[]=$dom->saveHTML($node);
}
打印(数组);
结果:

数组
(
[0] => 
[1] => 
[2] => 
[3] => 
)

顺便说一下,仅适用于PHP5.3.6及更高版本。

非常感谢您的回答!很好,我不知道新的节点参数。
$string = '
<a href="#" class="something">1</a>
<a href="#" class="something">2</a>
<a href="#" class="something">3</a>
<a href="#" class="something">4</a>
';

$dom = new DOMDocument;
$dom->loadHTML($string);
foreach($dom->getElementsByTagName('a') as $node)
{
    $array[] = $dom->saveHTML($node);
}

print_r($array);