2011-03-14 137 views
1

我想从这个网址PHP如何在这种情况下获得html原始代码?

http://www.ladige.it/news/2008_lay_notizia_01.php?id_cat=4&id_news=100152

我试图simple html domphp regular-expression获取文本betweeen <td valign="top" class="notizia_testo"></td>,但没有返回。我检查了HTML原始代码,并复制它们为:

<?php 
$str = <<<EOT 
//all the html raw code 
EOT; 
preg_match_all("|<td valign=\"top\" class=\"notizia_testo\">([^^]*?)</td>|u", $str, $matches1); 
print_r($matches1); 
?> 

我终于找到了故障可能造成的:

line 762  <!?php include($_SERVER["DOCUMENT_ROOT"]."/include/adv/manzoni_bigrect.php"); ?> 

如何通过这条线,并为我工作?谢谢。

+1

什么,如果有的话,错误信息你好吗? – mdm 2011-03-14 09:51:30

+0

@mdm,我想要在'','simple html dom'和'regular-expression'中返回文本,并在'<<< EOT ',调用'解析错误:语法错误,意外''',期待T_STRING或T_VARIABLE或T_NUM_STRING在...第762行,你有什么想法吗? – 2011-03-14 10:08:19

+0

' Wiseguy 2011-03-14 10:42:36

回答

4

您可以通过简单地使用simple_html_dom如下得到的结果,

require 'simplehtmldom/simple_html_dom.php'; 

    $data = file_get_contents('http://www.ladige.it/news/2008_lay_notizia_01.php?id_cat=4&id_news=100152'); 
    $oHTML = str_get_html($data); 
    $oTDs = $oHTML->find('table tr td.notizia_testo'); 
    $result = array(); 
    foreach($oTDs as $oTD) { 
     $result[] = trim($oTD->plaintext); 
    } 
    echo "<pre>"; 
    var_dump($result); 
    echo "</pre>";