xPath,复杂的foreach循环

时间:2014-09-05 13:04:39

标签: php html xpath

我正在使用xPath获取一个表,该表的第一列有一个指向另一个页面的链接,我希望该链接链接到名称列(第一列)。任何帮助,将不胜感激。

这就是我所拥有的:

echo '<table>';
foreach($xpath->query('//*[@id="CRConcernedPersonel1_DataGridCRPersonel"]/tr') as $row) { 
 echo '<tr>';
   foreach($xpath->query('td[position() > 0]', $row) as $col) {
    echo '<td>'.trim($col->textContent).'</td>'; 
     foreach($xpath->query('a/@href', $col) as $link) 
        echo '<a href="'.trim($link->textContent).'"</a>'.'Link text'."\n";          
 }
 echo '</tr>';
 }
 echo '</table>';

这是输出:

http://pastebin.com/5PjCae74

谢谢!

1 个答案:

答案 0 :(得分:1)

更改时应该可以使用

 echo '<a href="'.trim($link->textContent).'"</a>'.'Link text'."\n"; 

 echo '<a href="'.trim($link->textContent).'">Link text</a>'."\n";

目前您的输出内容如下:喜欢

<a href="CRDetails.aspx?PID=84539&Disp=1&inq=1"</a>Link text  

因此链接不起作用。按建议更改行应该导致

<a href="CRDetails.aspx?PID=84539&Disp=1&inq=1">Link text</a>