zoukankan      html  css  js  c++  java
  • TCP常用方法

    //格式化为16进制输出指令
    function fromateSendCode($code){
        $codeArr = getCodeWithSpace($code);
        for($i=0; $i<count($codeArr); $i++){
            $cmdHex[] = chr(hexdec($codeArr[$i]));
        }
        $cmdHex = implode($cmdHex);
        return $cmdHex;
    }
    
    //格式化收到指令
    function formateRevice($data){
        $receiveData = str_split(bin2hex($data), 2);
        $s='';
        foreach ($receiveData as $value) {
            $s.=$value;
        }
        return $s;
    }
    /**
     * 对16进制支付串进行和运算 和校验
     * @param  string $string 16进制字符串
     * @return int 16进制
     */
    function converTo16Space($codeArr){
        $s = '';
        foreach ($codeArr as $value) {
            $dec = hexdec($value);
            if($s){
                $s = $s+$dec;//&异或校验
            }else{
                $s = $dec;
            }
        }
        return substr(strtoupper(dechex($s)),-2);
    }

    另附通过韦根26协议转8位十进制方法

    //卡号转八位十六进制
    //http://www.chinadmd.com/file/zwixiuwxsxxwiatcauevazor_1.html
    function cardToHex($cardNo){
        $head = substr($cardNo, 0, 3);
        $body = substr($cardNo, -5);
        $hexHead = dechex($head);
        $hexBody = dechex($body);
        $hexBody = substr($hexBody, -2).substr($hexBody, 0, 2);
        $hex = $hexBody.$hexHead;
        $hex = strtoupper(str_pad($hex, 8, '0', STR_PAD_RIGHT ));
        return $hex;
    }
  • 相关阅读:
    TO DO List
    springboot 热部署
    <dependencyManagement>的作用
    人体工程学座椅
    temp
    temp
    声明式编程和命令式编程的本质区别
    weak first question
    Spring依赖注入方式和依赖来源
    SpringBoot 整合 H2 数据库
  • 原文地址:https://www.cnblogs.com/kkform/p/9236128.html
Copyright © 2011-2022 走看看