Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SOAP SDL Resource ID #251

Tags:

php

soap

I've never used SOAP before, and I'm getting this when I print out an array. Could someone tell me whether it's working, or not? I'm not sure what the Resource id stands for and I couldn't find an answer..

$this->client = new SoapClient("https://api.cvent.com/soap/V200611.ASMX?WSDL", array('trace' => true, 'exceptions' => true));
echo '<pre>';print_r($this->client);echo '</pre>';

SoapClient Object
(
    [trace] => 1
    [_soap_version] => 1
    [sdl] => Resource id #251
)

If anyone could help me out, that'd be great.

like image 575
SoulieBaby Avatar asked Nov 17 '25 20:11

SoulieBaby


1 Answers

I'm glad you solved your issue. I went ahead anyway to figure out what sdl is and how to use it.

I checked the SOAP extension source code and it looks like the resource represents the parsed and interpreted WSDL which is used internally for near enough all the SoapClient methods to lookup and return definitions data.

#L379 le_sdl = zend_register_list_destructors_ex(delete_sdl_res, NULL, "SOAP SDL", module_number);

le_sdl is of type sdlPtr (service definition language pointer? ) and is referenced throughout.

https://github.com/php/php-src/blob/7bbc85f16ac7b54b3cdbadc787518aed33369b7e/ext/soap/soap.c

I have no idea why we can view this resource as a public property SOAP_GLOBAL(sdl) as it doesn't look like it can be read by any PHP function. Its not in the list of defined resource types and the Soap documentation clearly says that the extension doesn't have any defined.

This extension has no resource types defined.

like image 63
TarranJones Avatar answered Nov 19 '25 10:11

TarranJones