XPath クエリが最後の一致しか返さない理由は何ですか? 明らかに複数のタグを持つ HTML フラグメントに対してクエリを実行しています<a name="...">
が、XPath クエリは 1 つの要素のみを返します。これはたまたま最後の要素です。
function extract($html) {
// This test shows that the retrieved HTML fragment indeed contains multiple anchor tags
echo "<textarea>".$html."</textarea>";
// parse the data
$dom = new DomDocument();
@$dom->loadHTML($html); // we use @$dom to suppress some warnings
$xpath = new DOMXPath($dom);
// find the html code for the post
$query = "//a[contains(@name, 'post')]";
$rows = $xpath->query($query);
// This will return 1
echo "Elements found: " . count($rows);
...
}