php調用webservice接口封裝方法

$parameters = array('TradeCode' => 1012,'ExtOrgCode' => '','ClientType'=>'','HospitalId'=>'','DepartmentCode'=>'','ExtUserID'=>'','SessType'=>'');
$para = createinterfacepara($parameters);
$result = soapclient($para);
$ret = parsexmlresult($result);
//調用接口函數方法
function soapclient($para)
{
global $soap_server;
global $db,$tablepre;
try 
{
//var_dump($para);
$client = new SoapClient($soap_server);
$client->decode_utf8=false;
$client->xml_encoding='utf-8';      
//var_dump ( $client->__getFunctions () );
$result = $client->OPRegistration(array('input' => $para));
//$response = get_object_vars($result);
//$response = $response['CommnuicationResult'];

//$sql = "insert into {$tablepre}soaplogs(soaptype,request,response,dateline,requestip) values('client','".addslashes($para)."','".addslashes($response)."','".time()."','$soap_server')";
//$db->query($sql);
unset($client);
    return $result;

catch (SoapFault $fault)
{
    $array = array("Error"=> $fault->faultcode,"String" => $fault->faultstring);
    return $array;
}
}
function createinterfacepara($parameters)
{

$ret = "";
$ret .= "<Request>";
foreach($parameters as $key => $value)
{

$ret.='<'.$key.'>'.$value.'</'.$key.'>';

}
$ret .= '</Request>';
return $ret;
}


function parsexmlresult($xml)
{
global $site_engine_root;

$toarray = get_object_vars($xml);

require_once $site_engine_root.'lib/xmlarray.php';
//echo htmlspecialchars($toarray['CommnuicationResult']);
$ret = xml2array($toarray['OPRegistrationResult']);
//printarray($ret);exit;

return $ret;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章