diff options
| author | Christian Weiske <cweiske@cweiske.de> | 2010-12-14 20:23:35 +0100 |
|---|---|---|
| committer | Christian Weiske <cweiske@cweiske.de> | 2010-12-14 20:23:35 +0100 |
| commit | fa9736f9dc8efee478bfbf5ede199842099250a0 (patch) | |
| tree | 6d5ca41bf1a64bdb2e1d7e819e1d83b0728310d6 | |
| parent | 3affd264002c60d087a4f8be3ae82e3e4ba0889f (diff) | |
| download | linksys-wrt3g-tools-fa9736f9dc8efee478bfbf5ede199842099250a0.tar.gz linksys-wrt3g-tools-fa9736f9dc8efee478bfbf5ede199842099250a0.zip | |
on the way to read status_noauth
| -rw-r--r-- | Wrt3g/HtmlParser.php | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Wrt3g/HtmlParser.php b/Wrt3g/HtmlParser.php index fe81c58..246cb6f 100644 --- a/Wrt3g/HtmlParser.php +++ b/Wrt3g/HtmlParser.php @@ -114,5 +114,35 @@ class Wrt3g_HtmlParser */ public function status_noauth($body) { + $body = str_replace( + array(' ', '</font>', '<script>', '</script>'), + '', $body + ); + //var_dump($body);die(); + $doc = new DomDocument(); + libxml_use_internal_errors(true);//html is broken + $doc->loadHtml($body); + $xpath = new DOMXPath($doc); + $trs = $xpath->query('//table//table/tbody/tr'); + foreach ($trs as $tr) { + /* + var_dump( + '--------',$doc->saveXML($tr), + $xpath->query('td', $tr)->length); + */ + $titleItems = $xpath->query('td[@width=125]/text()', $tr); + $valueItems = $xpath->query('td[@width=296]/*[1]', $tr); + if ($titleItems->length && $valueItems->length) { + $title = $titleItems->item(0); + $value = $valueItems->item(0); + + var_dump( + $doc->saveXML($title) . "\n" + . $doc->saveXML($value) . "\n\n" + ); + } + } + + $arMatches = array(); } }
\ No newline at end of file |
