关于快递鸟API二次封装/******快递鸟**getOrderTracesByJson()**->$eBusinessID//电商ID**->$appKey//电商加密私钥,快递birdProvide,keepsafe,donotleak**->$reqURL//电商ID**->$shipperCode//快递商ID**->$logisticCode//快递单号****/classNanSongKdApiSearch{/***Json方法查询订单物流轨迹*/publicfunctiongetOrderTracesByJson($eBusinessID,$appKey,$reqURL,$shipperCode,$logisticCode){$requestData="{'OrderCode':'','ShipperCode':$shipperCode,'LogisticCode':$logisticCode}";$datas=array('EBusinessID'=>$eBusinessID,'RequestType'=>'1002','RequestData'=>urlencode($requestData),'DataType'=>'2',);$datas['DataSign']=$this->encrypt($requestData,$appKey);$result=$this->sendPost($reqURL,$datas);//根据公司业务处理返回的信息。.....返回$结果;}/***post提交数据*@paramstring$url请请求Url*@paramarray$datas提交的数据*@returnurl响应返回的html*/publicfunctionsendPost($url,$datas){$temps=array();foreach($datasas$key=>$value){$temps[]=sprintf('%s=%s',$key,$value);}$post_data=implode('&',$temps);$url_info=parse_url($url);如果(空($url_info['port'])){$url_info['port']=80;}$httpheader="POST".$url_info['路径']。"HTTP/1.0\r\n";$httpheader.="主机:".$url_info['主机']。"\r\n";$httpheader.="Content-Type:application/x-www-form-urlencoded\r\n";$httpheader.="内容长度:".strlen($post_data)。"\r\n";$httpheader.="连接:关闭\r\n\r\n";$httpheader.=$post_data;$fd=fsockopen($url_info['host'],$url_info['port']);fwrite($fd,$httpheader);$gets="";$他aderFlag=真;while(!feof($fd)){if(($header=@fgets($fd))&&($header=="\r\n"||$header=="\n")){break;}}while(!feof($fd)){$gets.=fread($fd,128);}fclose($fd);返回$获取;@param数据内容*@paramappkeyAppkey*@returnDataSign名称*/publicfunctionencrypt($data,$appkey){returnurlencode(base64_encode(md5($data.$appkey)));
