Once alienated, an unalienable right is apt to be forever lost, in which case we are no longer even remotely the last best hope of Earth but merely a seedy imperial state whose citizens are kept in line by SWAT teams and whose way of death, not life, is universally imitated.Link
At this point, I believe most SOAP plumbers have conceded that XML
Schema will be the dominant type system and metadata format for interop.
How one converts from their local type system to the world of XML Schema
is a local problem that is (and should be) outside the scope of SOAP.
In MSFT-land, we do the conversion by importing XML Schema into our
runtime and making the “foreign” types look local. That technology is
broadly useful outside the scope of SOAP and/or web services, so we make
it accessible everywhere, although I’m sure there are lots of customers
who have no idea this is even in the platform.Link
NuSOAP is a rewrite of SOAPx4, provided by NuSphere.
NuSOAP is a group of PHP classes that allow developers to create and consume SOAP web services.
It does not require any special PHP extensions, which makes it usable by all PHP developers, regardless of ISP, server or platform.
Beware, I haven’t gotten usage of PHPDoc quite right, so the API docs are a bit wonky at this point.
NuSOAP is licensed under the LGPL.
To download the NuSOAP preview, click here.
- Preliminary support for WSDL on the server: You can bind a server instance to a local or remote WSDL document.
- SSL support if PHP has the CURL extension compiled in.
- Serialization directly from WSDL: No more soapval object tree. Great performance boost here, as well as more precise type-mapping.
- HTTP proxy support: very simple usage. Just pass your proxy host and port to the setHTTPProxy() method of the soapclient object, and you’re good to go.
- Most of the classes have been completely overhauled for performance: speed and resource usage.This also eliminated *many* bugs.
- Proxy class: new proxy class allows for calling services like this:
- Streaming single-pass multi-ref de-serialization: the entire process of decoding a XML SOAP message into PHP native types is now done in the initial parsing of the message. No hash of nodes, no recursing through the hash to create a huge object tree, no recursing *back* through the object tree to convert into PHP native types. Huge performance increase and dramatic drop in resource consumption here.
- SOAP Header support. Currently getting 194/60 on the SOAPBuilders Round 2, Group C tests, most failures due to remote server.
- ID/Href: We can now de-serialize messages that use references.
- Document/literal: SOAPx4 now fully supports doc/literal operations. It can also create stub XML documents from XML Schema type definitions, that users can ‘fill in the blanks’, and use for doc/lit operations.
- WSDL import: We now support the import functionality.
- Multidimensional array encoding and decoding for the client and server classes.