Using complex types with PHP5 SOAP functions?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi there!

First, i must state that i'm completely new to SOAP, but i have some experience with XML/XSLT.


I'm currently trying to implement a connection to a webservice that does use complex types to the max. I managed to use several functions it provides by creating the objects as classes and converting them via SoapVar($object, SOAP_ENC_OBJECT, 'complextypename', NULL, 'complextypename', 'namespace'). The Node name is the same as the name for the complex type. (and the classname, btw, but i'm not sure if that does matter)

Also the mambers are created via SoapVar(), simple as well as complex ones, as there's the namespace missing if i don't. E.g. through:
SoapVar($string, XSD_STRING, NULL, NULL, 'nodename', 'namespace')

I can't post the WSDL due to an NDA (examples on request). I have to use __call() resp. __soapCall() as i need to send an authetication-header (which also worked the same way).


Now i have severe problems creating complex types that use attributes, as all members of the are only converted to nodes in the XML request message.

1. Is the way i described the right way to use complex types?
2. Are there any tutorials on PHP5 native SOAP that go further than implementing a 'hello world'-example.
3. How can you create attributes in your request?
4. Can you send headers also with $client->method()?
5. Can someone please explain to me what the parameters on SoapVar(), SoapHeader() and __soapCall() do exactly mean?


I found out most of the stuff i know on (PHP5-)SOAP through trial-and-error, so i'm just beginning to understand how it works.
Generally, the SOAP-Extension seems to be vastly underdocumented...

So i'd appreciate if someone could give me a brief intoduction on how everything works together, i mean how to use the WSDL to build your app around it. Which classes do i have to define, and how can i extract them from the response. This last part isn't really as important as the answers to my questions, so it's perhaps best to ignore it, as i can imagine no one wants to write a full tutorial that most propably already exists somewhere. :)

One should collect all infos on this topic at some time and integrate it into the documentation of PHP5...



So, thanks in advance and regards, Oliver Müller

--
PHP Soap Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Kernel Newbies]     [PHP Database]     [Yosemite]

  Powered by Linux