There are built in settings to cache the WSDL that php.ini supports. This is attractive because a complex WSDL document can be quite verbose.
Here is an excerpt from DevZone in an article by Cal Evans that highlights some of that:
http://devzone.zend.com/25/php-soap-extension/ Please note that these settings can be overridden at run time should you programmatically wish to flush the cache.
"What are the problems with WSDL? The only argument against using it is that the client has to load the relevant WSDL document from the server before the RPC can be made, and this can take a significant amount of time in a Web environment. In order to speed things up, PHP's ext/soap uses a WSDL caching feature that can be controlled through setting the
soap.wsdl_cache_enabled, soap.wsdl_cache_dir and soap.wsdl_cache_ttl configuration directives, either in your php.ini or by using ini_set()(see Example 4 ).
By default, WSDL caching is turned on and caches WSDL files for one day."
Mike
Office Phone: (708)233-5880 Cell: (408)679-1011
-----Original Message-----
From: web400-bounces@xxxxxxxxxxxx [mailto:web400-bounces@xxxxxxxxxxxx] On Behalf Of Nathan Andelin
Sent: Monday, January 30, 2012 9:39 AM
To: Web Enabling the AS400 / iSeries
Subject: Re: [WEB400] Web Services War Stories
From: Scott Klement
$wsdl = 'http://geocoder.us/dist/eg/clients/GeoCoderPHP.wsdl';
$client = new SoapClient($wsdl);
$result = $client->geocode($address);
You've got to give someone credit for the amount of code that must have gone into PHP SoapClient to simplify the interface as they did. I wonder how well it works with complex WSDL files like:
http://footballpool.dataaccess.eu/data/info.wso?wsdl
For those who are consuming web services, have you run into WSDL files that expose dozens of functions (operations)? If so, does the tooling hold up? I gather that a PHP SoapClient parses the WSDL file each time it uses it. Contrast that with say an ILE interface where at least part of the binding to service program procedures occurs at compile time rather than runtime.
-Nathan
As an Amazon Associate we earn from qualifying purchases.