以前、PHPのXPathでテキストノード取得したら、期待した順番通りに取得できなかった。と書きました。 ある要素の子ノード群に、エレメントノードとテキストノードがそれぞれ2つ以上あると起きる現象ではないかと推測します。 直下じゃなければいいのでは? ということで、ダミータグで囲ってみたら、期待した順番通りに取得できました。 PHPソース <?php $html = <<< EOL <!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01//EN' 'http://www.w3.org/TR/html4/strict.dtd'> <html> <head> <meta http-equiv='Content-type' content='text/html; charset=utf-8'> <title>test</title> </head> <body>