资讯专栏INFORMATION COLUMN

UPS跟踪号校验代码

xfee / 706人阅读

摘要:每个快递公司生成的单号大部分带自校验功能。下面的代码实现对单号的正确性校验

每个快递公司生成的单号大部分带自校验功能。下面的代码实现对UPS单号的正确性校验

function validUPS($tr){
    $tr = strtoupper(trim($tr));
    if (strlen($tr) == 11)
    {
        $checknumber = 100 - (substr($tr,1, 1) + substr($tr,3, 1) + substr($tr,5, 1) + substr($tr,7, 1) + substr($tr,9, 1) + 2 * (substr($tr,2, 1) + substr($tr,4, 1) + substr($tr,6, 1) + substr($tr,8, 1)));
        if ($checknumber < 0)
        {
            $checknumber = 100 + $checknumber;
        }
        if ($checknumber >= 10)
        {
            $checknumber = substr($checknumber,1,1);
        }
        else if ($checknumber <= 10)
        {
            $checknumber = substr($checknumber,0,1);
        }
        $r= substr($tr,10, 1) == $checknumber;
    }else if (strlen($tr)=="18"){
        $tr = substr($tr,2, 16);
        for ($i = 65; $i <= 90; $i++)
        {
            if ($i >= 65 && $i <= 72)
            {
                $tr=str_replace(chr($i),chr($i-15),$tr);
            }
            else if ($i >= 73 && $i <= 82)
            {
                $tr=str_replace(chr($i),chr($i-25),$tr);
            }
            else if ($i >= 83 && $i <= 90)
            {
                $tr=str_replace(chr($i),chr($i-35),$tr);
            }
        }
        $checknumber = 100 - (substr($tr,0, 1) + substr($tr,2, 1) + substr($tr,4, 1) + substr($tr,6, 1) + substr($tr,8, 1) + substr($tr,10, 1) + substr($tr,12, 1) + substr($tr,14, 1) + 2 * (substr($tr,1, 1) + substr($tr,3, 1) + substr($tr,5, 1) + substr($tr,7, 1) + substr($tr,9, 1) + substr($tr,11, 1) + substr($tr,13, 1)));
        if ($checknumber < 0)
        {
            $checknumber = 100 + $checknumber;
        }
        if ($checknumber < 10)
        {
            $checknumber = substr($checknumber,0,1);
        }
        else if ($checknumber >= 10)
        {
            $checknumber = substr($checknumber,1,1);
        }
        $r= $checknumber == substr($tr,15, 1);
    }else {
        $r=false;
    }
    return $r;
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/31953.html

相关文章

  • “以假乱真” 网络钓鱼活动巧妙使用 UPS.com XSS 漏洞分发恶意软件

    摘要:此漏洞允许威胁行为者通过远程工作人员分发恶意文档,但使其看起来像是直接从下载的。目前显示,的跨站漏洞已经修复。而以上钓鱼攻击利用的是中第二普遍的安全问题,存在于近三分之二的应用中。 .markdown-body{word-break:break-word;line-height:1.75;font-weight:400;font-size:15px;overflow-x:hidde...

    KoreyLee 评论0 收藏0
  • 科华UPS 怎样选择UPS电源?

    摘要:其次应了解的额定功率有两种表示方法视在功率单位与实际输出功率单位,由于无功功率的存在所以造成了这种差别,两者的换算关系为视在功率功率因数实际输出功率。 机房ups电源是网络机房架设中的一种设备,一种可以在无市电情况下持续供电的设备,​​不间断电源​​,英文简称ups,主要为网络设备,如交换机,服务器等设备提供干净,稳定的电...

    cangck_X 评论0 收藏0
  • excelitas埃赛力达高压电源维修LC501常见故障

    摘要:电源维修埃塞力达电源维修高压电源维修设备电源维修仪器电源维修公司自备维修资料库及元件库,涉及上千种常用元器件,特别收集了大量停产的偏冷门电源管理,变压器,电感线圈及混合集成模块等电源配件。 天浦正达从事高压电源维修二十年,拥有多名长年从事电源维修工作的工程师,理论扎实,经验丰富,各种拓扑架构...

    tommego 评论0 收藏0

发表评论

0条评论

xfee

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<