Created
June 6, 2012 08:11
-
-
Save helieting/2880587 to your computer and use it in GitHub Desktop.
nusoap example1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?php | |
| // Pull in the NuSOAP code | |
| require_once('nusoap.php'); | |
| // Create the client instance | |
| $client = new soapclient('http://localhost/phphack/hellowsdl.php?wsdl', true); | |
| // Check for an error | |
| $err = $client->getError(); | |
| if ($err) { | |
| // Display the error | |
| echo '<h2>Constructor error</h2><pre>' . $err . '</pre>'; | |
| // At this point, you know the call that follows will fail | |
| } | |
| // Call the SOAP method | |
| $result = $client->call('hello', array('name' => 'Scott')); | |
| // Check for a fault | |
| if ($client->fault) { | |
| echo '<h2>Fault</h2><pre>'; | |
| print_r($result); | |
| echo '</pre>'; | |
| } else { | |
| // Check for errors | |
| $err = $client->getError(); | |
| if ($err) { | |
| // Display the error | |
| echo '<h2>Error</h2><pre>' . $err . '</pre>'; | |
| } else { | |
| // Display the result | |
| echo '<h2>Result</h2><pre>'; | |
| print_r($result); | |
| echo '</pre>'; | |
| } | |
| } | |
| // Display the request and response | |
| echo '<h2>Request</h2>'; | |
| echo '<pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>'; | |
| echo '<h2>Response</h2>'; | |
| echo '<pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>'; | |
| // Display the debug messages | |
| echo '<h2>Debug</h2>'; | |
| echo '<pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>'; | |
| ?> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?php | |
| // Pull in the NuSOAP code | |
| require_once('nusoap.php'); | |
| // Create the server instance | |
| $server = new soap_server(); | |
| // Initialize WSDL support | |
| $server->configureWSDL('hellowsdl', 'urn:hellowsdl'); | |
| // Register the method to expose | |
| $server->register('hello', // method name | |
| array('name' => 'xsd:string'), // input parameters | |
| array('return' => 'xsd:string'), // output parameters | |
| 'urn:hellowsdl', // namespace | |
| 'urn:hellowsdl#hello', // soapaction | |
| 'rpc', // style | |
| 'encoded', // use | |
| 'Says hello to the caller' // documentation | |
| ); | |
| // Define the method as a PHP function | |
| function hello($name) { | |
| return 'Hello, ' . $name; | |
| } | |
| // Use the request to (try to) invoke the service | |
| $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : ''; | |
| $server->service($HTTP_RAW_POST_DATA); | |
| ?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment