0

サンプルコードがあります:

$content = '
<table width="100%" border="0"> 
   <tr>
      <td style="white-space:nowrap;" class="cap_row_odd">browser_id</td>
      <td width="100%" class="cap_row_odd">browser_winmo_iemobile9</td>
   </tr>
   <tr>
      <td style="white-space:nowrap;" class="cap_row_even  cap_isempty"><span>nokia_feature_pack</span></td>                
      <td width="100%" class="cap_row_even cap_isempty"></td>             
   </tr>
</table>
';

そして私はDOMDocumentを使用しています:

$dom = new DOMDocument();
@$dom->loadHTML($content);
$xpath = new DOMXPath($dom);

$attributes = array();

$query1 = $xpath->query("//td[@style='white-space:nowrap']");
foreach($query1 as $a) { 
    $attributes[] = $a->nodeValue;
}

print_r($attributes);

=> しかし、結果は null です。取得する方法は?

4

1 に答える 1

0

;xpath クエリにa がありません:

$query1 = $xpath->query("//td[@style='white-space:nowrap;']"); // works

クエリをより堅牢にするために、 contains()関数の使用を検討してください。

$query1 = $xpath->query("//td[contains(@style, 'white-space:nowrap')]"); // works too
于 2012-07-26T08:51:48.970 に答える