diff --git a/show.php b/show.php index fb8f673..7f31047 100644 --- a/show.php +++ b/show.php @@ -30,7 +30,7 @@ $endPattern = "(?\d+)\/0\/(?P\d+)$NL"; $pvidPattern = " port (?:access|trunk pvid|hybrid pvid) vlan (?P\d+)$NL"; -$portHybridPattern = " port hybrid vlan (?:(?P\d+)(?: [\d ]*)? tagged|(?P\d+)(?: \d+)* untagged)$NL"; +$portHybridPattern = " port hybrid vlan (?:(?P\d+)(?: (?:to|\d+))* tagged|(?P\d+)(?: \d+)* untagged)$NL"; $voiceVlanPattern = " voice-vlan (?P\d+) enable$NL"; preg_match_all("/$startPattern$interfaceAddressPattern(?:$pvidPattern|$portHybridPattern|$voiceVlanPattern|$otherPattern)*$endPattern/", $conf, $interfaces, PREG_SET_ORDER); @@ -38,10 +38,10 @@ $stack = array(); foreach ($interfaces as $interface) { if (!isset($stack[$interface["member"]])) $stack[$interface["member"]] = [[], []]; $interface["style"] = ""; - if (!empty($interface["pvid"])) $interface["style"] .= "--pvid: {$interface["pvid"]}; "; - if (!empty($interface["tagged"])) $interface["style"] .= "--tagged: {$interface["tagged"]}; "; - if (!empty($interface["untagged"])) $interface["style"] .= "--untagged: {$interface["untagged"]}; "; - if (!empty($interface["voice_vlan"])) $interface["style"] .= "--voice-vlan: {$interface["voice_vlan"]}; "; + if (!empty($interface["pvid"])) $interface["style"] .= "--pvid: {$interface["pvid"]};"; + if (!empty($interface["tagged"])) $interface["style"] .= " --tagged: {$interface["tagged"]};"; + if (!empty($interface["untagged"])) $interface["style"] .= " --untagged: {$interface["untagged"]};"; + if (!empty($interface["voice_vlan"])) $interface["style"] .= " --voice-vlan: {$interface["voice_vlan"]};"; $stack[$interface["member"]][1 - $interface["port"] % 2][$interface["port"]] = $interface; } ?>