使用dom html。我想将节点值转换为字符串:将nodevalue转换为字符串
$html = @$dom->loadHTMLFile('url');
$dom->preserveWhiteSpace = false;
$tables = $dom->getElementsByTagName('body');
$rows = $tables->item(0)->getElementsByTagName('tr');
// loop over the table rows
foreach ($rows as $text =>$row)
{
$t=1;
// get each column by tag name
$cols = $row->getElementsByTagName('td');
//getting values
$rr = @$cols->item(0)->nodeValue;
print $rr; (it prints values of all 'td' tag fine)
}
print $rr; (it prints nothing) I want it to print here
?>
我想要nodevalues转换为字符串进一步操作。
欢迎来到SO。请花点时间让你的问题有一点可读性,这样我们可以帮助你更好。 – Starx 2012-01-06 08:00:39
您正在使用'@'运算符来抑制错误。如果发生错误,您将不会注意到它。例如。如果文档无法加载(服务器关闭),则不会有节点提取任何内容。另外,如果你正确地缩进你的代码,它会更好的可读性,并且更容易处理。 – hakre 2012-01-06 08:07:28