PHP SoapClient unable to work with https WS

前端 未结 2 582
执笔经年
执笔经年 2021-01-13 20:55

i have a problem working with PHP SoapClient with a WS (WSDL) that contains https. my PHP version is 5.2.5. before you ask, yes, i am using PHP\'s Soap and openSSL extention

相关标签:
2条回答
  • 2021-01-13 21:00

    You will need to have OpenSSL enabled in PHP to be able to retrieve content over https.

    Uncomment this line in php.ini

    extension=php_openssl.dll
    

    Look for the openssl section in your phpinfo():

    OpenSSL support => enabled  
    OpenSSL Library Version => OpenSSL 0.9.8k 25 Mar 2009
    OpenSSL Header Version => OpenSSL 0.9.8k 25 Mar 2009
    
    0 讨论(0)
  • 2021-01-13 21:17

    I just ran the code you gave and it worked perfectly:

    <?php
    $url = "https://id3check.gb.co.uk/gbportalinternational/aspx/id3check_1b.asmx?WSDL";
    $options["connection_timeout"] = 25;
    $options["location"] = $url;
    $options['trace'] = 1;
    
    $client = new SoapClient($url,$options);
    
    print_r($client->__getFunctions());
    

    results in

    Array
    (
        [0] => ID3CheckInitialise_1bResponse ID3CheckInitialise_1b(ID3CheckInitialise_1b $parameters)
        [1] => ID3AddressLookupInitialise_1bResponse ID3AddressLookupInitialise_1b(ID3AddressLookupInitialise_1b $parameters)
        [2] => ID3Check_1bResponse ID3Check_1b(ID3Check_1b $parameters)
        [3] => AddressLookup_1bResponse AddressLookup_1b(AddressLookup_1b $parameters)
    )
    

    So maybe you should check if there are any network problems: Is there a firewall blocking the communication from within your server process? (I assume it's IIS?) You may also want to check safe_mode settings, although I doubt this is the problem here.

    0 讨论(0)
提交回复
热议问题