0

PHP で SimpleHTMLDom ライブラリを使用しており、HTML データからノードを取得できます。たとえば、次のようなhtmlデータがあります。

<html>
<body>
<table>
<tr>
<td>One</td>
<td>Two</td>
<td>Three</td>
</tr>
</table>
</body>
<html>

そして、私は解析コードを次のように使用しています:

foreach($html->find('td') as $element)
echo $element->plaintext . '<br>'; 

しかし、このコードは結果を次のように返します:

One<br/>
Two<br/>
Three<br/>

私が欲しいのは、変数 $one で "One"、$two で "Two"、$three で "Three" という結果が欲しいということです。問題は、特定の変数で特定のテーブル列要素を取得するにはどうすればよいかということです。IDやクラスに関係なくトラバースしたい。HTMLデータのタグの3番目のオカレンスのように取得したい。ありがとう。SIMPLEHTMLDOM.sourceforge.com のマニュアルは理解できません。

4

2 に答える 2

1
echo getElementByIndex(3); //whatever element you are looking for.

function getElementByIndex($indexOfElement) {
    $i = 1; //or 0 depending on starting list index
    foreach($html->find('td') as $element) {
        $i++;
        if ($i == $indexOfElement)
        return $element->plaintext . '<br>';
    } 
}
于 2013-10-31T08:13:39.870 に答える