前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >快递查询API (http://www.kuaidi.com/)

快递查询API (http://www.kuaidi.com/)

作者头像
友儿
发布2022-07-27 16:17:15
4280
发布2022-07-27 16:17:15
举报
文章被收录于专栏:友儿友儿

框架 Yii2

前几天申请的key审核通过了,今天把完整的代码发出来。
代码语言:javascript
复制
<?php
/**
 * Created by http://www.kuaidi.com
 * User: http://www.kuaidi.com
 * Date: 2019/3/28
 * Time: 11:04
 */

namespace app\helper;

class KuaiDiAPI
{
    private $_APPKEY = '';
    private $_APIURL = "http://api.kuaidi.com/openapi.html?";
    private $_show = 0;
    private $_muti = 0;
    private $_order = 'desc';

    /**
     * 您获得的快递网接口查询KEY。
     * @param string $key
     */

    public function __construct($key)
    {
        header("Content-type:text/html;charset=utf-8");
        $this->_APPKEY = $key;
    }

    /**
     * 设置数据返回类型。0: 返回 json 字符串; 1:返回 xml 对象
     * @param int $show
     */

    public function setShow($show = 0)
    {

        $this->_show = $show;
    }

    /**
     * 设置返回物流信息条目数, 0:返回多行完整的信息; 1:只返回一行信息
     * @param int $muti
     */

    public function setMuti($muti = 0)
    {

        $this->_muti = $muti;
    }

    /**
     * 设置返回物流信息排序。desc:按时间由新到旧排列; asc:按时间由旧到新排列
     * @param string $order
     */

    public function setOrder($order = 'desc')
    {

        $this->_order = $order;
    }

    /**
     * @param string $nu 物流单号
     * @param string $com 公司简码 要查询的快递公司代码,不支持中文,具体请参考快递公司代码文档。 不填默认根据单号自动匹配公司。注:单号匹配成功率高于 95%。
     * @return mixed
     * @throws \Exception
     */

    public function query($nu, $com = '')
    {

        if (function_exists('curl_init') == 1) {

            $url = $this->_APIURL;
            $dataArr = array(
                'id' => $this->_APPKEY,
                'com' => $com,
                'nu' => $nu,
                'show' => $this->_show,
                'muti' => $this->_muti,
                'order' => $this->_order
            );

            foreach ($dataArr as $key => $value) {

                $url .= $key . '=' . $value . "&amp;";
            }

            $curl = curl_init();
            curl_setopt($curl, CURLOPT_URL, $url);
            curl_setopt($curl, CURLOPT_HEADER, 0);
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($curl, CURLOPT_TIMEOUT, 10);
            $kuaidresult = curl_exec($curl);
            curl_close($curl);

            if ($this->_show == 0) {

                $result = json_decode($kuaidresult, true);
            } else {

                $result = $kuaidresult;
            }

            return $result;

        } else {

            throw new \Exception("Please install curl plugin",1);
        }
    }
}
调用:
代码语言:javascript
复制
<?php
        $key = '1ee2c0d83f6697942d739e54df942429e1';//自己去官网申请
        $kuaidichaxun = new KuaiDiAPI($key);
        $nu = '98951263966645';//物流单号
        $com = 'youzhengguonei';//公司简码 (见官网文档)
        $result = $kuaidichaxun->query($nu,$com);
        Logic::vd($result);
测试结果:
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 框架 Yii2
    • 前几天申请的key审核通过了,今天把完整的代码发出来。
      • 调用:
      • 测试结果:
相关产品与服务
腾讯云服务器利旧
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档