<?php $xml = <<< xml <?xml version="1.0" encoding="utf-8"?> <epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd"> <response> <result code="1000"> <msg>command completed successfully</msg> </result> <resdata> <domain:chkdata xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemalocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd"> <domain:cd> <domain:name avail="0">qq.com</domain:name> <domain:reason>domain exists</domain:reason> </domain:cd> <domain:cd> <domain:name avail="1">baidu.com</domain:name> <domain:reason>domain exists</domain:reason> </domain:cd> </domain:chkdata> </resdata> <trid> <cltrid>req-001-0000000074</cltrid> <svtrid>649334436-1440642163169</svtrid> </trid> </response> </epp> xml; $x = simplexml_load_string($xml); echo intval($x->response->result["code"]), "\n"; echo strval($x->response->result->msg), "\n"; $ns = $x->response->resdata->getnamespaces(true); $cds = $x->response->resdata->children($ns["domain"])->chkdata->cd; foreach ($cds as $key => $value) { echo intval($value->name->attributes()["avail"]), strval($value->name), strval($value->reason), "\n"; }
希望本文所述对大家php程序设计有所帮助。
更多php处理复杂xml数据示例。
