Xpath начинает индекс с 1, а не с 0: /html/body/table[1]
Теперь все зависит от того, хотите ли вы сохранить HTML-код соответствующего узла или вам нужно текстовое содержимое узла.
$html = <<<'HTML'
<html>
<body>
<p>Hello World</p>
</body>
</html>
HTML;
$dom = new DOMDocument();
$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
// iterate all matched nodes and save them as HTML to a buffer
$result = '';
foreach ($xpath->evaluate('/html/body/p[1]') as $p) {
$result .= $dom->saveHtml($p);
}
var_dump($result);
// cast the first matched node to a string
var_dump(
$xpath->evaluate('string(/html/body/p[1])')
);
Демо: https://eval.in/155592
string(18) "<p>Hello World</p>"
string(11) "Hello World"