As you have learned in this chapter, creating service providers and service requestors with the PHP SOAP extension is quite easy in most cases—you simply manipulate predefined SOAP classes. Things become a bit more complicated when it comes to transmitting complex type data—especially if you are dealing with XML documents whose elements contain attributes. This is where intermediate transformations are required. We looked at how to employ a custom PHP class to perform such transformations and how to use standard XSLT mechanism.
In this chapter, you also learned how to extend predefined classes of the PHP SOAP extension and how standard methods of these classes can be overridden to suit the needs of your application. The chapter wrapped up by explaining how to build Web services supporting parameter-driven operations.