PHP SimpleXML从对象获取价值

凯蒂·哈德森(Katie Hudson)

有一个关于从simpleXML对象获取值的问题。所以首先,我这样做

$data = $xml->children('SOAP-ENV', true)->Body->children()->ExecuteQueryResponse->pdomOutput->recipient->attributes()->email;
var_dump($data);

然后返回以下内容

object(SimpleXMLElement)#8 (1) {
  [0]=>
  string(26) "[email protected]"
}

我只需要其中的电子邮件地址。因此,我继续执行此操作

$this->response = (string)$data[0];
var_dump($this->response);

现在,我希望上面的代码只返回电子邮件地址,但是,它将返回所有内容,包括类型,例如

string(26) "[email protected]"

我可以使用诸如preg_match之类的方法轻松地从中获取电子邮件地址,但是确定这不是要走的路吗?没有类型就无法获取值吗?

谢谢

一月

如果只想使用字符串,则SimpleXML具有SimpleXMLElements的__toString() 功能因此,使用您的代码将是:

$data = $xml->children('SOAP-ENV', true)->Body->children()->ExecuteQueryResponse->pdomOutput->recipient->attributes()->email;
$this->response = $data[0]->__toString();

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章