我是一名Java开发人员。如何使用PHP处理XML响应?
- 我想调用一个将返回XML的服务HTTP(rest)
- 在得到这个XML响应之后,我想像在Java中那样自动将这个XML转换为对象(类)。(这是我不知道要应付的部分)
示例:
我的xml:
<?xml>
<root>
<user_email>fde@xxx.com</user_email>
<user_name>FDE Test</user_name>
<password_expired>false</password_expired>
</root>
我的班级:
class User{
private $_userMail;
private $_userName;
private $_isPasswordExpired;
// Getters and Setters
}
首先,您可以使用curl请求它(curl不是唯一的选项),这里有一个简单的示例。
并且需要使用simplexml_load_string 将响应xml更改为xml对象
$response = simplexml_load_string($xml_response);
您可以在类构造中随意设置响应数据。
class User {
private $_userMail;
function __construct($response) {
$this->setUserMail($response->userMail);
}
// getters, setters
}
在您得到响应之后,您需要创建User对象并给出响应。
// Create User
$user = new User($response);
// Check if response created a valid object
if ($user instanceof User) {
// valid
} else {
// not valid
}