0
這是通過API返回正確分析:PHP的SimpleXMLElement不與命名空間
<?xml version='1.0' encoding='utf-8'?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xml:base="https://exmple.com/odata/">
<id>https://example.com/odata/PicklistOption(989L)</id>
<title type="text" />
<updated>2015-09-03T11:56:51Z</updated>
<author>
<name />
</author>
<link rel="edit" title="PicklistOption" href="PicklistOption(989L)" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/childPicklistOptions" type="application/atom+xml;type=feed" title="childPicklistOptions" href="PicklistOption(989L)/childPicklistOptions" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/parentPicklistOption" type="application/atom+xml;type=entry" title="parentPicklistOption" href="PicklistOption(989L)/parentPicklistOption" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/picklistLabels" type="application/atom+xml;type=feed" title="picklistLabels" href="PicklistOption(989L)/picklistLabels" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/picklist" type="application/atom+xml;type=entry" title="picklist" href="PicklistOption(989L)/picklist" />
<category term="SFOData.PicklistOption" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
<content type="application/xml">
<m:properties>
<d:id m:type="Edm.Int64">989</d:id>
<d:status>ACTIVE</d:status>
<d:sortOrder m:type="Edm.Int32">229</d:sortOrder>
<d:minValue m:type="Edm.Double">-1</d:minValue>
<d:externalCode>PL</d:externalCode>
<d:optionValue m:type="Edm.Double">-1</d:optionValue>
<d:maxValue m:type="Edm.Double">-1</d:maxValue>
</m:properties>
</content>
</entry>
現在試圖讓<d:id>
$xml = new SimpleXMLElement($xmlstr);
$namespaces = $xml->getNameSpaces(true);
$xml->registerXPathNamespace('m', $namespaces['m']);
$xml->registerXPathNamespace('d', $namespaces['d']);
$id = $xml->xpath('/entry/content/m:properties/d:id');
var_dump($id);
,但我得到array(0)
。
輝煌!謝謝! –