私はこの問題についてこの質問を使用していました。 このテーブルを解析してデータを抽出するにはどうすればよいですか?
しかし、私が解析しようとしているテーブルで困惑しました。
これはPHPページのソースコードです。その中には、テーブルID「troops」という1つのテーブルしかありません。
配列のテーブルヘッダーを取得できましたが、行データをヘッダーに接続できません。
これは私が使用しているコードであり、上記の記事のために、私のニーズに合わせて編集されています。
htmlソースコード http://pastebin.com/RKbzVT1V
使用したphpコード
$content = $_POST['src'];
$dom = new DomDocument;
$dom -> loadHtml($content);
$xpath = new DomXPath($dom);
// collect header names
$headerNames = array();
foreach ($xpath->query('//table[@id="troops"]//th') as $node) {
//foreach ($xpath->query('//th[ contains (@class, "vil fc") ]') as $node) {
$headerNames[] = $node -> nodeValue;
}
// collect data
$data = array();
foreach ($xpath->query('//tr') as $node) {
$rowData = array();
foreach ($xpath->query('//td', $node) as $cell) {
$rowData[] = $cell -> nodeValue;
}
$data[] = array_combine($headerNames, $rowData);
}
より簡単な方法があれば、この問題に関する助けをいただければ幸いです。