php通过curl获取xml数据,获取节点内容

例如获取到的xml文件内容为:

    <meta>
        <status>ok</status>
        <statuscode>100</statuscode>
        <message>OK</message>
        <totalitems></totalitems>
        <itemsperpage></itemsperpage>
    </meta>
    <data>
        <users>
            <element>admin</element>
            <element>test1</element>
            <element>test2</element>
            <element>test3</element>
        </users>
    </data>
curl获取数据的代码为:
      $header[] = 'header内容';
      $ch = curl_init($url);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
      curl_setopt($ch, CURLOPT_HEADER, 1);
      curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
      $result = curl_exec($ch);
      curl_close($ch);

     $userXmlData = simplexml_load_string($result); // 获取xml数据结构
     print_r($userXmlData->data->users->element); // 获取element数据内容

其中curl获取的内容格式为:

SimpleXMLElement Object ( [meta] => SimpleXMLElement Object ( [status] => ok [statuscode] => 100 [message] => OK [totalitems] => SimpleXMLElement Object ( ) [itemsperpage] => SimpleXMLElement Object ( ) ) [data] => SimpleXMLElement Object ( [users] => SimpleXMLElement Object ( [element] => Array ( [0] => admin [1] => test1 [2] => test2 [3] => test3 ) ) ) )

获取的element内容为:

SimpleXMLElement Object ( [0] => admin [1] => test1 [2] => test2 [3] => test3 )

例如要获取status的内容,则代码为:$userXmlData->meta->status;

点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注