Hmm, zkusil jsem ten curl a je to rychlejší (ale dnes jde rychle i soap - asi je to tím že je pátek )
Ale mám problém že mi to nevrátí xml (nebo jinou použitelnou strukturu), ale vratí mi to string bez mezer. Nevíš proč?
Takto to mám teď:
function getISIRStatus($ico) {
$request = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://isirws.cca.cz/types/">
<soapenv:Header/>
<soapenv:Body>
<typ:getIsirWsCuzkDataRequest>
<ic>'.$ico.'</ic>
</typ:getIsirWsCuzkDataRequest>
</soapenv:Body>
</soapenv:Envelope>';
$url = "https://isir.justice.cz:8443/isir_cuzk_ws/IsirWsCuzkService";
$headers = array(
"Accept-Encoding: gzip,deflate",
"Content-Type: text/xml;charset=UTF-8",
"Content-length: ".strlen($request),
"Host: isir.justice.cz:8443",
"Connection: Keep-Alive",
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $request); // the SOAP request
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
Můžete si to vyzkoušet - jako parametr je string české IČODíky