2
PHPでWebサービスを使用しようとしています。私はWebサービスの出力を制御できません。それは良いXMLのように見えますが、simpleXMLは空のオブジェクトを返すだけです。ここではこれが私のスクリプトで簡単な$xml = file_get_contents($url);
呼び出しによって得られているなぜsimpleXMLはこのXMLを何かに変換できないのですか?
<?xml version="1.0" encoding="utf-8"?>
<DataSet xmlns="http://Service">
<xs:schema id="WorkOrders" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="WorkOrders" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="WorkOrder">
<xs:complexType>
<xs:sequence>
<xs:element name="WorkOrder_x0023_" type="xs:string" minOccurs="0" />
<xs:element name="DateEntered" type="xs:string" minOccurs="0" />
<xs:element name="DateCompleted" type="xs:string" minOccurs="0" />
<xs:element name="DateChanged" type="xs:string" minOccurs="0" />
<xs:element name="Status" type="xs:string" minOccurs="0" />
<xs:element name="Type" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<WorkOrders xmlns="">
<WorkOrder diffgr:id="WorkOrder1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<WorkOrder_x0023_>7164724</WorkOrder_x0023_>
<DateEntered>07/19/11</DateEntered>
<DateCompleted>07/21/11</DateCompleted>
<DateChanged>07/21/11</DateChanged>
<Status>CP</Status>
<Type>IN</Type>
</WorkOrder>
</WorkOrders>
</diffgr:diffgram>
</DataSet>
Webサービスから返されるXMLです。 simplexml_load_string($xml);
は、空のオブジェクトを返します。
(object) SimpleXMLElement Object
(
)
私はここに何かが不足していることを知っていますが、私はちょうどそれに私の指を置くことはできません。何か案は?
はありがとうございます。私は本当にこれ以上頭を傷つけていた。 – DewBoy3d