add clear

This commit is contained in:
as2252258@163.com
2020-03-10 16:17:57 +08:00
parent 535d3b3e82
commit a88b42a26d
+18 -7
View File
@@ -35,23 +35,34 @@ class Help extends Miniprogarampage
if (is_array($xml)) { if (is_array($xml)) {
return $xml; return $xml;
} }
$matchQoute = '/(<\?xml.*?\?>)?<([a-zA-Z_]+)>(<([a-zA-Z_]+)><!.*?><\/\4>)+<\/\2>/';
if (!preg_match($matchQoute, $xml)) {
return self::jsonToArray($xml);
}
try { try {
$data = @simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA); $data = @simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);
if ($data !== false) { if ($data !== false) {
return json_decode(json_encode($data), TRUE); $data = json_decode(json_encode($data), TRUE);
} else {
$data = $xml;
} }
$data = json_decode($xml, TRUE);
} catch (\Exception $exception) { } catch (\Exception $exception) {
$data = json_decode($xml, TRUE); $data = $xml;
} finally { } finally {
if (is_array($data)) { return $data;
return $data;
}
return $xml;
} }
} }
public static function jsonToArray($xml)
{
$_xml = json_decode($xml, true);
if (is_null($_xml)) {
return $xml;
}
return $_xml;
}
/** /**
* @param $xml * @param $xml
* @return mixed * @return mixed