有一个关于从simpleXML对象获取值的问题。所以首先,我做这个
$data = $xml->children('SOAP-ENV', true)->Body->children()->ExecuteQueryResponse->pdomOutput->recipient->attributes()->email;
var_dump($data);
然后返回以下
object(SimpleXMLElement)#8 (1) {
[0]=>
string(26) "myemail@email.com"
}
我只需要这个的电子邮件地址。所以我继续做这个
$this->response = (string)$data[0];
var_dump($this->response);
现在我希望上面只返回电子邮件地址,但相反,它会返回所有内容,包括类型,例如
string(26) "myemail@email.com"
我可以使用preg_match之类的东西很容易地从中获取电子邮件地址,但这肯定不是办法吗?没有类型就不可能得到值吗?
感谢
如果您只想拥有字符串,SimpleXML有SimpleXMLElements的__toString()
函数。因此,对于您的代码,这将是:
$data = $xml->children('SOAP-ENV', true)->Body->children()->ExecuteQueryResponse->pdomOutput->recipient->attributes()->email;
$this->response = $data[0]->__toString();