从HTML代码解析数字时的空白页使用'PHP Simple HTML DOM Parser'

时间:2012-08-23 23:08:49

标签: dom curl domparser

我正在使用PHP Simple HTML DOM Parser我有一些HTML代码,我希望从中提取第一个数字,在此示例中为“735438”:

<!-- Some Tds without onclick atribute ->
<td onclick="StatsAnnonce ('735438');" style="CURSOR:pointer;"  onmouseover="return escape('<img  src=/images/icon_stats.gif border=0 width=13 height=14> <b>Statistiques de cette annonce</b><li>Affichages des détails annonce</li><li>Classement par mois et par pays.</li>');">&nbsp;&nbsp;<img  src="/images/icon_stats.gif" border="0" width="13" height="14" alt="Statistique annonce">&nbsp;Stats&nbsp;</td>
<td onclick="ModifAnnonce ('735438','1','302528');" style="CURSOR:pointer;"  onmouseover="return escape('<img  src=/images/button_edit.gif border=0 width=13 height=14> <b>Editer cette annonce</b><li>Modifier : titre, texte, prix</li><li>Ajouter/Supprimer des photos</li>');">&nbsp;&nbsp;<img  src="/images/button_edit.gif" border="0" width="13" height="14" alt="Modifier l'annonce">&nbsp;Modif&nbsp;</td>
<td onclick="ProlongerAnnonce ('735438');" style="CURSOR:pointer;"  onmouseover="return escape('<img  src=/images/button_calendar.gif border=0 width=14 height=14> <b>Renouveler cette annonce</b>');"><img  src="/images/button_calendar.gif" border="0" width="14" height="14" alt="Renouveler l'annonce">&nbsp;Renouv&nbsp;</td>
<td onclick="DeleteAnnonce('735438','06/08/2012 00:50','302528','Bon appart s+1');" style="CURSOR:pointer;"  onmouseover="return escape('<img  src=/images/button_trash.gif border=0 width=13 height=14> <b>Supprimer cette annonce</b>');"><img  src="/images/button_trash.gif" border="0" width="13" height="14" alt="Supprimer l'annonce">&nbsp;Suppr&nbsp;</td>

我已尝试使用此代码(根据文档说明)但无法正常工作:

$html = str_get_html('page.html');

// Find all <td> with the 'onclick' as attribute
$ret = $html->find('td[onclick]');


// Find just all <td>
$ret = $html->find('td');


foreach($ret as $val)
{
echo $val."<br/>";
}

结果只是一个没有代码的空白页面...... 我是新的HTML DOM Parser,如果有人使用这个库帮助我...

提前致谢

1 个答案:

答案 0 :(得分:1)

首先,我确保你实际上正在阅读文档(我很确定你不是在这一点上)。你应该使用:

$html = file_get_html('page.html');  // This!
//$html = str_get_html('page.html'); // Not this!

假设您尝试从onclick属性中提取信息,您似乎应该在foreach循环中使用此信息:

echo $val->onclick . "<br/>";  // This!
//echo $val."<br/>";  //Not this!

$val在这一点上仍然是一个HTML元素 - 我不确定如果你回应它会得到什么,但我猜它不是你想要的。