1 <?php 2 3 4 namespace App\Org; 5 6 use App\Models\Admin\AdminSetting; 7 8 $express_bird_apikey=AdminSetting::where('name','express_bird_apikey')->value('value'); 9 $express_bird_userid=AdminSetting::where('name','express_bird_userid')->value('value'); 10 define('express_bird_apikey',$express_bird_apikey??''); 11 define('express_bird_userid',$express_bird_userid??''); 12 13 class ExpressBird 14 { 15 const url_query_express='https://api.kdniao.com/Ebusiness/EbusinessOrderHandle.aspx';//及时查询 16 17 const request_base=[ 18 'EBusinessID'=>express_bird_userid,//用户 ID 19 'DataType'=>'2',//数据为json 20 ]; 21 22 /** 23 * 生成请求签名 24 */ 25 public static function getSign($data) 26 { 27 $sign=urlencode(base64_encode(md5(json_encode($data).express_bird_apikey))); 28 return $sign; 29 } 30 31 //查询快递 32 public static function queryExpressInfo($data) 33 { 34 $data_all=self::request_base; 35 $data_all['RequestData']=json_encode($data); 36 $data_all['RequestType']=1002; 37 $data_all['DataSign']=self::getSign($data); 38 $url=self::url_query_express.'?'.http_build_query($data_all); 39 $res=json_decode(zc_curl($url)); 40 if($res->Success===false) 41 { 42 throw new \Exception($res->Reason,-1); 43 } 44 return $res; 45 } 46 }