Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中从xml中提取值_Php_Xml_Api - Fatal编程技术网

在php中从xml中提取值

在php中从xml中提取值,php,xml,api,Php,Xml,Api,在使用simplexml\u load\u string php函数从api调用获取xml后,我得到了以下格式的xml SimpleXMLElement Object ( [@attributes] => Array ( [Code] => 0 [Description] => Success ) [XMLVersion] => 8.9.62 ) 如何获取代码和说明的值以供进一步使用。根据您的代码,您应该能够以多种方式访问属性。假设XML <UserDetail

在使用simplexml\u load\u string php函数从api调用获取xml后,我得到了以下格式的xml

SimpleXMLElement Object ( [@attributes] => Array ( [Code] => 0 [Description] => Success )
[XMLVersion] => 8.9.62 ) 

如何获取代码和说明的值以供进一步使用。

根据您的代码,您应该能够以多种方式访问属性。假设XML

<UserDetails Code="0" Description="Success">
    <FName>Bob</FName>
    etc...
然后,以下任一项都应起作用:

// Accessing from the UserDetails SimpleXMLElement
echo $result['UserDetails']['Description'];
// Via the subsequent
echo $res_info['@attributes']['Description'];

如果这不起作用,可能您可以发布它来自的XML部分,或者您的代码正在转储您发布的对象。

根据您的代码,您应该能够以多种方式访问属性。假设XML

<UserDetails Code="0" Description="Success">
    <FName>Bob</FName>
    etc...
然后,以下任一项都应起作用:

// Accessing from the UserDetails SimpleXMLElement
echo $result['UserDetails']['Description'];
// Via the subsequent
echo $res_info['@attributes']['Description'];

如果这不起作用,可能您可以发布它来自的XML部分,或者您的代码正在转储您发布的对象。

手册页面有一些示例:我尝试了这样的方法$res=simplexml\u load\u string(curl\u exec($ch))$结果=获取对象变量($res)$res_info=get_object_vars($result['UserDetails')//回声“;打印(资源信息);回声“$EmpID=$res_info['@attributes']['EmpID']$FName=$res_info['FName']$LName=$res_info['LName']$Email=$res_info['Email']$用户名=$resu info['UserName']$TID=$res_info['TID'];这是可行的,但不是一个好方法[@attributes]会产生问题,xml更复杂如果你发布一个示例xml文件…只要一两个节点,我想你会得到更简洁和切中要害的答案。手册页面有一些例子:我试过用这种方式$res=simplexml\u load\u string(curl\u exec($ch))$结果=获取对象变量($res)$res_info=get_object_vars($result['UserDetails')//回声“;打印(资源信息);回声“$EmpID=$res_info['@attributes']['EmpID']$FName=$res_info['FName']$LName=$res_info['LName']$Email=$res_info['Email']$用户名=$resu info['UserName']$TID=$res_info['TID'];这是可行的,但是[@attributes]并不是一个好方法,它会产生问题,如果你发布一个示例xml文件,xml会更复杂……仅仅是一两个节点,我想你会得到更简洁和切中要害的答案。