Это зависит от того, что вы хотите совместить, но я, вероятно, использую что-то вроде этого:
$doc = new DOMDocument();
$doc->formatOutput = true;
$doc->preserveWhiteSpace = true;
$doc->load($html);
$doc->encoding = 'UTF-8';
$nodes = $doc->getElementsByTagName('a');
foreach ($nodes as $node) {
// Do something ...
}