怎么在php项目中调用快递鸟接口

发布时间:2021-03-09 16:53:19 作者:Leah
来源:亿速云 阅读:99

怎么在php项目中调用快递鸟接口?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

怎么在php项目中调用快递鸟接口

快递鸟流程图

<?php
//电商ID
defined('EBusinessID') or define('EBusinessID', '电商ID');
//电商加密私钥,快递鸟提供,注意保管,不要泄漏
defined('AppKey') or define('AppKey', '电商加密私钥');
//请求url
defined('ReqURL') or define('ReqURL', 'http://api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx');
//调用查询物流轨迹
//---------------------------------------------
$kgs = "STO";//快递公司简称,官方有文档
$number = "3335800028275";//快递单号//
$logisticResult = getOrderTracesByJson($kgs,$number);
$data = json_decode($logisticResult,true);
if($data['Success'] == true){//返回信息成功
$str = "";
for($i=0;$i<count($data['Traces']);$i++){
$str .= "时间:".$data['Traces'][$i]['AcceptTime']."<br/>地址:".$data['Traces'][$i]['AcceptStation']."<br/>";
}
echo "您查询的单号是:".$data['LogisticCode']."<br/>
物流信息:<br/>".$str."";
}
//---------------------------------------------
/**
 * Json方式 查询订单物流轨迹
 *$kgs string 快递公司
 *$number string 快递单号
 */
function getOrderTracesByJson($kgs,$number){
$requestData= "{'OrderCode':'','ShipperCode':'$kgs','LogisticCode':'$number'}";
$datas = array(
    'EBusinessID' => EBusinessID,
    'RequestType' => '1002',
    'RequestData' => urlencode($requestData) ,
    'DataType' => '2',
  );
  $datas['DataSign'] = encrypt($requestData, AppKey);
$result=sendPost(ReqURL, $datas);
//根据公司业务处理返回的信息......
return $result;
}
/**
 * post提交数据 
 * @param string $url 请求Url
 * @param array $datas 提交的数据 
 * @return url响应返回的html
 */
function sendPost($url, $datas) {
  $temps = array();
  foreach ($datas as $key => $value) {
    $temps[] = sprintf('%s=%s', $key, $value);
  }
  $post_data = implode('&', $temps);
  $url_info = parse_url($url);
if(empty($url_info['port']))
{
$url_info['port']=80;
}
  $httpheader = "POST " . $url_info['path'] . " HTTP/1.0\r\n";
  $httpheader.= "Host:" . $url_info['host'] . "\r\n";
  $httpheader.= "Content-Type:application/x-www-form-urlencoded\r\n";
  $httpheader.= "Content-Length:" . strlen($post_data) . "\r\n";
  $httpheader.= "Connection:close\r\n\r\n";
  $httpheader.= $post_data;
  $fd = fsockopen($url_info['host'], $url_info['port']);
  fwrite($fd, $httpheader);
  $gets = "";
$headerFlag = true;
while (!feof($fd)) {
if (($header = @fgets($fd)) && ($header == "\r\n" || $header == "\n")) {
break;
}
}
  while (!feof($fd)) {
$gets.= fread($fd, 128);
  }
  fclose($fd); 
  return $gets;
}
/**
 * 电商Sign签名生成
 * @param data 内容  
 * @param appkey Appkey
 * @return DataSign签名
 */
function encrypt($data, $appkey) {
  return urlencode(base64_encode(md5($data.$appkey)));
}
?>

效果图:

怎么在php项目中调用快递鸟接口

php调用快递鸟接口示意图

快递公司编码:

编码名称
AJ安捷快递
ANE安能物流
AXD安信达快递
BQXHM北青小红帽
BFDF百福东方
BTWL百世快运
CCESCCES快递
CITY100城市100
COECOE东方快递
CSCY长沙创一
CDSTKY成都善途速运
DBL德邦
DSWLD速物流
DTWL大田物流
EMSEMS
FAST快捷速递
FEDEXFEDEX联邦(国内件)
FEDEX_GJFEDEX联邦(国际件)
FKD飞康达
GDEMS广东邮政
GSD共速达
GTO国通快递
GTSD高铁速递
HFWL汇丰物流
HHTT天天快递
HLWL恒路物流
HOAU天地华宇
hq568华强物流
HTKY百世快递
HXLWL华夏龙物流
HYLSD好来运快递
JGSD京广速递
JIUYE九曳供应链
JJKY佳吉快运
JLDT嘉里物流
JTKD捷特快递
JXD急先达
JYKD晋越快递
JYM加运美
JYWL佳怡物流
KYWL跨越物流
LB龙邦快递
LHT联昊通速递
MHKD民航快递
MLWL明亮物流
NEDA能达速递
PADTF平安达腾飞快递
QCKD全晨快递
QFKD全峰快递
QRT全日通快递
RFD如风达
SAD赛澳递
SAWL圣安物流
SBWL盛邦物流
SDWL上大物流
SF顺丰快递
SFWL盛丰物流
SHWL盛辉物流
ST速通物流
STO申通快递
STWL速腾快递
SURE速尔快递
TSSTO唐山申通
UAPEX全一快递
UC优速快递
WJWL万家物流
WXWL万象物流
XBWL新邦物流
XFEX信丰快递
XYT希优特
XJ新杰物流
YADEX源安达快递
YCWL远成物流
YD韵达快递
YDH义达国际物流
YFEX越丰物流
YFHEX原飞航物流
YFSD亚风快递
YTKD运通快递
YTO圆通速递
YXKD亿翔快递
YZPY邮政平邮/小包
ZENY增益快递
ZHQKD汇强快递
ZJS宅急送
ZTE众通快递
ZTKY中铁快运
ZTO中通速递
ZTWL中铁物流
ZYWL中邮物流
AMAZON亚马逊物流
SUBIDA速必达物流
RFEX瑞丰速递
QUICK快客快递
CJKD城际快递
CNPEXCNPEX中邮快递
HOTSCM鸿桥供应链
HPTEX海派通物流公司
AYCA澳邮专线
PANEX泛捷快递
PCAPCA Express
UEQUEQ Express

关于怎么在php项目中调用快递鸟接口问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

推荐阅读:
  1. java对接快递鸟单号查询自动识别接口,调用示例
  2. php 快递100接口

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php

上一篇:使用phpunit怎么实现一个接口自动化测试功能

下一篇:怎么在php中利用curl方法调用接口

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》