2010-12-10 5 views
0

私はsimplehtmldomに関する質問があります。 特定のテキストを含む別の要素のnext_siblingである特定の要素のテキストを取得するにはどうすればよいですか?例えばphp simplehtmldom issue

私は、このようにHTMLテキストがあります。

<div> 
<table> 
    <tr> 
    <td>prova</td> 
    <td>pippo</td> 
    </tr> 
</table> 
</div> 

をし、私は値「PROVA」であることを知っている.Consider秒「TD」のテキストを抽出する必要があります固定値。

echo $html->find("td:contains('prova')",0)->next_sibling(); 

が、「含んでいる」はsimplehtmldomに存在しません:私は、私はこのコードを使用することができることを考えました。 どうすればいいですか?

おかげであなたの答えのためにたくさん


おかげで、私は、テキスト「PROVA」が含まれていTDTDのテキストを抽出する必要があります。

例として、私が最初の列の値を知っているので、同様のコード

echo $html->find("td:contains('prova')",0)->next_sibling()->innertext; 

と値「ピッポ」を抽出する必要があります。残念ながら、関数にはが含まれていますが、simplehtmldomには存在しません。

コード

echo $html->find("td:innertext('prova')",0)->next_sibling(); 

は正しい方法ではありません。

他にご提案がありますか?

おかげ

答えて

1

は、このコード

<?php 
include_once "simple_html_dom.php"; 
// the html code loaded (in this case in string mode) 
$html = '<div> 
<table> 
    <tr> 
    <td>prova</td> 
    <td>pippo</td> 
    </tr> 
</table> 
</div>'; 

$dom = str_get_html($html); 
// the selector :contains isn't develop yet 
$tds = $dom -> find("td"); 
foreach($tds as $td){ 
    if ($td -> innertext == "prova"){ 
     echo $td -> next_sibling() -> innertext; 
    } 
} 
?> 
+0

こんにちはbiancardi、 を試してみてください、私は私がforeachのオハイオ州のTD要素を使用することができることを知っているが、私は含ま機能と同様のjqueryのが存在するかどうかを知りたいと思います。 あなたの答えをありがとう。 – kl4us