From: Christian Weiske Date: Mon, 13 Dec 2010 07:08:38 +0000 (+0100) Subject: move html parsing into own class X-Git-Tag: 1.0.0~57 X-Git-Url: https://git.cweiske.de/linksys-wrt3g-tools.git/commitdiff_plain/ee05c3a28ae30f6b30b559715eef017e8fa47f5a move html parsing into own class --- diff --git a/Wrt3g.php b/Wrt3g.php index 78cb10d..0cd9de0 100644 --- a/Wrt3g.php +++ b/Wrt3g.php @@ -36,15 +36,6 @@ class Wrt3g */ public $password; - protected static $arTranslations = array( - 'GPRS_MSG.WWBEAR' => 'type', - 'GPRS_MSG.NNAME' => 'network', - 'GPRS_MSG.STRENGTH' => 'signal strength', - 'GPRS_MSG.ACQUIRING' => 'aquiring', - 'GPRS_MSG.WWBEAR_GPRS' => 'GPRS', - 'GPRS_MSG.WWBEAR_UMTS' => 'UMTS', - ); - /** @@ -108,14 +99,7 @@ class Wrt3g $r->setUrl($strUrlBase . '/index_wstatus2.asp'); $resp = $r->send(); echo $resp->getStatus() . ' ' . $resp->getReasonPhrase() . "\n"; - $body = $resp->getBody(); - preg_match('/var status2 = "(.+)"/', $body, $arMatches); - - $strStatus = $arMatches[1]; - //Connecting - //Disconnected - //Connected - $arRetval['connection'] = strtolower($strStatus); + $arRetval = $parser->index_wstatus2($resp->getBody()); /** * GPRS/UMTS Status @@ -123,41 +107,9 @@ class Wrt3g $r->setUrl($strUrlBase . '/index_wstatus1.asp'); $resp = $r->send(); $body = $resp->getBody(); - $arRetval = array_merge($arRetval, $this->parseStatus($body)); + $arRetval = array_merge($arRetval, $parser->index_wstatus1($body)); return $arRetval; }//public function getStatus() - - - - /** - * Parses the body and returns extracted values - * - * @param string $body HTML document to parse - * - * @return array Array of key-value pairs - */ - protected function parseStatus($body) - { - $arRetval = array(); - $arMatches = array(); - preg_match_all('#>Capture\(([^)]+)\) \ No newline at end of file diff --git a/Wrt3g/HtmlParser.php b/Wrt3g/HtmlParser.php new file mode 100644 index 0000000..03ac574 --- /dev/null +++ b/Wrt3g/HtmlParser.php @@ -0,0 +1,76 @@ + +* @license AGPL v3 +* @link http://cweiske.de/linksys-wrt3g-tools.htm +*/ +class Wrt3g_HtmlParser +{ + protected static $arTranslations = array( + 'GPRS_MSG.WWBEAR' => 'type', + 'GPRS_MSG.NNAME' => 'network', + 'GPRS_MSG.STRENGTH' => 'signal strength', + 'GPRS_MSG.ACQUIRING' => 'aquiring', + 'GPRS_MSG.WWBEAR_GPRS' => 'GPRS', + 'GPRS_MSG.WWBEAR_UMTS' => 'UMTS', + ); + + + + /** + * Parses the body of /index_wstatus1.asp and returns extracted values. + * + * @param string $body HTML document to parse + * + * @return array Array of key-value pairs + */ + public function index_wstatus1($body) + { + $arRetval = array(); + $arMatches = array(); + preg_match_all('#>Capture\(([^)]+)\) strtolower($strStatus)); + } +} \ No newline at end of file