Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP curl>;SOAP获取的数据在获取信息时遇到问题_Php_Soap_Curl_Xml Parsing - Fatal编程技术网

PHP curl>;SOAP获取的数据在获取信息时遇到问题

PHP curl>;SOAP获取的数据在获取信息时遇到问题,php,soap,curl,xml-parsing,Php,Soap,Curl,Xml Parsing,最近,我问了一个关于在PHP中使用SOAP的不同问题,但从那时起,我就厌倦了客户机-服务器响应无法工作。相反,我切换到cURL,在那里我可以指定所有内容,现在我得到了正确的响应 我的问题在于从这些数据中获取信息。在过去的两天里,我尝试了一些教程,其中大部分都很好,但是当我将同样的方法应用到我自己的数据时,我得到的结果都是空的。我想这是因为xml标记在名称中使用空格之类的东西,我不知道 如果有人能在这里直接给我指出正确的方向,我将不胜感激。就像获取一条信息告诉我如何做一样简单,我不需要为自己完成所

最近,我问了一个关于在PHP中使用SOAP的不同问题,但从那时起,我就厌倦了客户机-服务器响应无法工作。相反,我切换到cURL,在那里我可以指定所有内容,现在我得到了正确的响应

我的问题在于从这些数据中获取信息。在过去的两天里,我尝试了一些教程,其中大部分都很好,但是当我将同样的方法应用到我自己的数据时,我得到的结果都是空的。我想这是因为xml标记在名称中使用空格之类的东西,我不知道

如果有人能在这里直接给我指出正确的方向,我将不胜感激。就像获取一条信息告诉我如何做一样简单,我不需要为自己完成所有的事情。多谢各位

XML返回如下所示:

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><FetchStockResponse xmlns="http://www.wics.nl"><FetchStockResult><DS><xs:schema id="rsVoorraad" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop"><xs:element name="rsVoorraad" msdata:IsDataSet="true" msdata:Locale="" msprop:PROGRESS.brejected="False" msprop:PROGRESS.bdata_source_mod="False"><xs:complexType><xs:choice minOccurs="0" maxOccurs="unbounded"><xs:element name="Voorraad" msdata:Locale="" msprop:PROGRESS.brejected="False" msprop:PROGRESS.bdata_source_mod="False" msprop:PROGRESS.errorString="" msprop:PROGRESS.bundo="True" msprop:PROGRESS.bimage_flag="False"><xs:complexType><xs:sequence><xs:element name="ArtikelCode" msprop:PROGRESS.user_order="0" msprop:PROGRESS.position="2" type="xs:string" minOccurs="0" /><xs:element name="ArtikelGroepCode" msprop:PROGRESS.user_order="1" msprop:PROGRESS.position="3" type="xs:string" minOccurs="0" /><xs:element name="Omschrijving" msprop:PROGRESS.user_order="2" msprop:PROGRESS.position="4" type="xs:string" minOccurs="0" /><xs:element name="VariantCode" msprop:PROGRESS.user_order="3" msprop:PROGRESS.position="5" type="xs:string" minOccurs="0" /><xs:element name="Type" msprop:PROGRESS.user_order="4" msprop:PROGRESS.position="6" type="xs:string" minOccurs="0" /><xs:element name="Aantal" msprop:PROGRESS.init_value="0" msprop:PROGRESS.user_order="5" msprop:PROGRESS.position="7" type="xs:decimal" default="0" minOccurs="0" /><xs:element name="OrderVoorraad" msdata:Locale="" msprop:PROGRESS.brejected="False" msprop:PROGRESS.bdata_source_mod="False" msprop:PROGRESS.errorString="" msprop:PROGRESS.bundo="True" msprop:PROGRESS.bimage_flag="False" minOccurs="0" maxOccurs="unbounded"><xs:annotation><xs:appinfo><msdata:Relationship name="relOrder" msdata:parent="Voorraad" msdata:child="OrderVoorraad" msdata:parentkey="Type ArtikelCode" msdata:childkey="Type ArtikelCode" /></xs:appinfo></xs:annotation><xs:complexType><xs:sequence><xs:element name="Type" msprop:PROGRESS.user_order="0" msprop:PROGRESS.position="2" type="xs:string" /><xs:element name="ArtikelCode" msprop:PROGRESS.user_order="1" msprop:PROGRESS.position="3" type="xs:string" /><xs:element name="VariantCode" msprop:PROGRESS.user_order="2" msprop:PROGRESS.position="4" type="xs:string" /><xs:element name="Ordernummer" msprop:PROGRESS.init_value="0" msprop:PROGRESS.user_order="3" msprop:PROGRESS.position="5" type="xs:int" default="0" /><xs:element name="Regelnummer" msprop:PROGRESS.init_value="0" msprop:PROGRESS.user_order="4" msprop:PROGRESS.position="6" type="xs:int" default="0" /><xs:element name="Referentie" msprop:PROGRESS.user_order="5" msprop:PROGRESS.position="7" type="xs:string" minOccurs="0" /><xs:element name="Plaats" msprop:PROGRESS.user_order="6" msprop:PROGRESS.position="8" type="xs:string" minOccurs="0" /><xs:element name="Leverdatum" msprop:PROGRESS.user_order="7" msprop:PROGRESS.position="9" type="xs:dateTime" minOccurs="0" /><xs:element name="Aantal" msprop:PROGRESS.init_value="0" msprop:PROGRESS.user_order="8" msprop:PROGRESS.position="10" type="xs:decimal" default="0" minOccurs="0" /></xs:sequence></xs:complexType></xs:element></xs:sequence></xs:complexType></xs:element></xs:choice></xs:complexType><xs:unique name="idxOrderVoorraad" msdata:PrimaryKey="true"><xs:selector xpath=".//OrderVoorraad" /><xs:field xpath="Type" /><xs:field xpath="ArtikelCode" /><xs:field xpath="VariantCode" /><xs:field xpath="Ordernummer" /><xs:field xpath="Regelnummer" /></xs:unique></xs:element></xs:schema><diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1"><rsVoorraad xmlns=""><Voorraad diffgr:id="Voorraad1" msdata:rowOrder="0"><ArtikelCode>WAVETEST</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test artikel</Omschrijving><VariantCode /><Type>Beschadigd</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad2" msdata:rowOrder="1"><ArtikelCode>WAVETEST</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test artikel</Omschrijving><VariantCode /><Type>Beschikbare voorraad</Type><Aantal>97</Aantal></Voorraad><Voorraad diffgr:id="Voorraad3" msdata:rowOrder="2"><ArtikelCode>WAVETEST</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test artikel</Omschrijving><VariantCode /><Type>Gereserveerd</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad4" msdata:rowOrder="3"><ArtikelCode>WAVETEST</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test artikel</Omschrijving><VariantCode /><Type>In backorder</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad5" msdata:rowOrder="4"><ArtikelCode>WAVETEST</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test artikel</Omschrijving><VariantCode /><Type>In orderverwerking</Type><Aantal>5</Aantal><OrderVoorraad diffgr:id="OrderVoorraad1" msdata:rowOrder="0"><Type>In orderverwerking</Type><ArtikelCode>WAVETEST</ArtikelCode><VariantCode /><Ordernummer>554712</Ordernummer><Regelnummer>1</Regelnummer><Referentie>test decimalen</Referentie><Plaats>Testdorp</Plaats><Leverdatum>2012-02-14T00:00:00+01:00</Leverdatum><Aantal>2</Aantal></OrderVoorraad><OrderVoorraad diffgr:id="OrderVoorraad2" msdata:rowOrder="1"><Type>In orderverwerking</Type><ArtikelCode>WAVETEST</ArtikelCode><VariantCode /><Ordernummer>741124</Ordernummer><Regelnummer>1</Regelnummer><Referentie>test auto mail DHL</Referentie><Plaats>Heerhugowaard</Plaats><Leverdatum>2012-09-07T00:00:00+02:00</Leverdatum><Aantal>1</Aantal></OrderVoorraad></Voorraad><Voorraad diffgr:id="Voorraad6" msdata:rowOrder="5"><ArtikelCode>WAVETEST</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test artikel</Omschrijving><VariantCode /><Type>Te ontvangen</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad7" msdata:rowOrder="6"><ArtikelCode>WAVETEST</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test artikel</Omschrijving><VariantCode /><Type>Vrije voorraad</Type><Aantal>100</Aantal></Voorraad><Voorraad diffgr:id="Voorraad8" msdata:rowOrder="7"><ArtikelCode>WAVETEST2</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test 2</Omschrijving><VariantCode /><Type>Beschadigd</Type><Aantal>19</Aantal></Voorraad><Voorraad diffgr:id="Voorraad9" msdata:rowOrder="8"><ArtikelCode>WAVETEST2</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test 2</Omschrijving><VariantCode /><Type>Beschikbare voorraad</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad10" msdata:rowOrder="9"><ArtikelCode>WAVETEST2</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test 2</Omschrijving><VariantCode /><Type>Gereserveerd</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad11" msdata:rowOrder="10"><ArtikelCode>WAVETEST2</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test 2</Omschrijving><VariantCode /><Type>In backorder</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad12" msdata:rowOrder="11"><ArtikelCode>WAVETEST2</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test 2</Omschrijving><VariantCode /><Type>In orderverwerking</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad13" msdata:rowOrder="12"><ArtikelCode>WAVETEST2</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test 2</Omschrijving><VariantCode /><Type>Te ontvangen</Type><Aantal>0</Aantal></Voorraad><Voorraad diffgr:id="Voorraad14" msdata:rowOrder="13"><ArtikelCode>WAVETEST2</ArtikelCode><ArtikelGroepCode>ALG</ArtikelGroepCode><Omschrijving>Wave test 2</Omschrijving><VariantCode /><Type>Vrije voorraad</Type><Aantal>0</Aantal></Voorraad></rsVoorraad></diffgr:diffgram></DS><AantRec /></FetchStockResult></FetchStockResponse></soap:Body></soap:Envelope>
WaveTestalWave TestalWave TestalWave TestalWave test artikelBeschikbare Voorraad97 WaveTestalWave测试ArtikeleServeerD0WaveTestalWave测试artikelIn Backorder 0 WaveTestalWave TestalWave test artikelIn Order 5 In Order VerkingWave test 5547121测试决策者2012-02-14T00:00+01:002In OrderVerkingWaveTest 7411241自动测试邮件DHLHeerhugowaard2012-09-07T00:00:00+02:001WaveTestalWave TestalWave test Artiklete Ontvangen0 WaveTestalWave test artikelVrije Voorraad100 WaveTest 2AlgWave test 2Beschikbare Voorraad0 WaveTest 2AlgWave test 2Ereserveerd0 WaveTest2AlgWave test 2In Backorder0 WaveTest WaveTest 2AlgWave test 2In OrradWaveTest 2In OrderverKingWaveTest 2AlgWaveTest 2In OrradWa2Te ontvangen0WAVETEST2ALGWave Test2Vrije voorraad0
这是你可以看到的wavetest“hello world”返回,我必须在客户端服务器上玩,同时让它工作。如果有人能告诉我如何检索例如“ArtikelCode”


或者,如何获得所有的“Voorraad diffgr:id=“id_name”也很好

Wrikken说得很对,我没有正确理解名称空间及其对输出的影响

在像他建议的那样再次搜索之后,我发现这个问题帖子最有帮助


好吧,除了用php+simplexml+名称空间进行stackoverflow的数百个问题之外,手工完成这项工作……很高兴能够调试/开始。@Wrikken谢谢!我已经尝试将原始输入更改为asXML(),并尝试从输出中获取数据,但我获取$xml作为新的simplexml元素,而不是新的DOMDocument,然后是asXML()>loadXML我现在可以抓取元素了!!!所以都是名称空间错误grr lol。非常感谢,我看不出我是如何将你的评论标记为正确答案的:(如果主持人看到了这一点,那么Wrikken是正确的。尽管你能回答一件事,我如何指定“Voorraad diffgr”?比如->{Voorraad diffgr'}->?
diffgr
是属性的命名空间(
diffgr:id
),它与寻址
Voorraad
节点本身无关,那应该只是
->Voorraad
@Wrikken LOL谢谢你,我没有在哪里读到任何关于这方面的内容,或者我读了太多,我完全错过了它。不管怎样,再次感谢!经过测试并充分工作,我的思想负荷很大:)