PHP 读取xml格式的字符串
我通过接口或得一个字符串:<?xmlversion="1.0"encoding="utf-8"?><responsescode="200"msg="time:0ms971...
我通过接口或得一个字符串:
<?xml version="1.0" encoding="utf-8" ?><responses code="200" msg="time: 0ms 971us"><response>法国</response><response>德国</response><response>中国</response><response>英国</response><response>泰国</response><response>美国</response><response>韩国</response><response>西兰公国</response><response>中非共和国</response><response>韩国丽水-韩国</response></responses>
但是应该是xml格式的,请问这种情况我应该怎么用Php读取出这里面的国家呢,不能用字符串替换。非常感谢,没分了,不好意思 展开
<?xml version="1.0" encoding="utf-8" ?><responses code="200" msg="time: 0ms 971us"><response>法国</response><response>德国</response><response>中国</response><response>英国</response><response>泰国</response><response>美国</response><response>韩国</response><response>西兰公国</response><response>中非共和国</response><response>韩国丽水-韩国</response></responses>
但是应该是xml格式的,请问这种情况我应该怎么用Php读取出这里面的国家呢,不能用字符串替换。非常感谢,没分了,不好意思 展开
2个回答
展开全部
$strXml='<?xml version="1.0" encoding="utf-8" ?><responses code="200" msg="time: 0ms 971us"><response>法国</response><response>德国</response><response>中国</response><response>英国</response><response>泰国</response><response>美国</response><response>韩国</response><response>西兰公国</response><response>中非共和国</response><response>韩国丽水-韩国</response></responses>';
$pos = strpos($strXml, 'xml');
if (!$pos) {
die("不是xml字符串!");
}
$obj=simplexml_load_string($strXml,'SimpleXMLElement', LIBXML_NOCDATA);
if(is_object($obj)){
$obj=get_object_vars($obj);
}
echo "<pre>";
print_r($obj);
另外记得文件一定要是utf-8编码,如果不是记得用iconv函数转一下。
$pos = strpos($strXml, 'xml');
if (!$pos) {
die("不是xml字符串!");
}
$obj=simplexml_load_string($strXml,'SimpleXMLElement', LIBXML_NOCDATA);
if(is_object($obj)){
$obj=get_object_vars($obj);
}
echo "<pre>";
print_r($obj);
另外记得文件一定要是utf-8编码,如果不是记得用iconv函数转一下。
展开全部
$str = '<?xml version="1.0" encoding="utf-8" ?><responses code="200" msg="time: 0ms 971us"><response>法国</response><response>德国</response><response>中国</response><response>英国</response><response>泰国</response><response>美国</response><response>韩国</response><response>西兰公国</response><response>中非共和国</response><response>韩国丽水-韩国</response></responses>';
$postObj = simplexml_load_string($str, 'SimpleXMLElement', LIBXML_NOCDATA);
$arr = (array) $postObj->response;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询