• 技术文章 >后端开发 >PHP问题

    php 怎么实现int转字节

    藏色散人藏色散人2023-01-18 09:26:32原创66

    php实现int转字节的方法:1、创建一个PHP示例文件;2、定义“public static function integerToBytes($val) {...}”方法;3、通过掩码运算实现int转换成BYTE数组即可。

    本教程操作环境:Windows10系统、PHP8.1版、DELL G3电脑

    php 怎么实现int转字节?

    PHP实现INT型,SHORT型,STRING转换成BYTE数组

    实现PHP实现INT型,SHORT型,STRING转换成BYTE数组的转化:

    class Bytes {
      public static function integerToBytes($val) {
        $val = (int)$val;
        $byte = array();
        //低位在前,即小端法表示
        $byte[0] = ($val & 0xFF);//掩码运算
        $byte[1] = ($val >> 8 & 0xFF);
        $byte[2] = ($val >> 16 & 0xFF);
        $byte[3] = ($val >> 24 & 0xff);
        return $byte;
      }
     
      public static function bytesToInteger(array $bytes, $pos) {
        $val = 0;
        $val = $bytes[$pos + 3] & 0xff;
        $val <<= 8;
        $val |= $bytes[$pos + 2] & 0xff;
        $val <<= 8;
        $val |= $bytes[$pos + 1] & 0xff;
        $val <<= 8;
        $val |= $bytes[$pos + 0] & 0xff;
        return intval($val);
      }
     
      public static function shortToBytes($val) {
        $val = intval($val);
        $byt = array();
        $byt[0] = ($val & 0xff);
        $byt[1] = ($val >> 8 & 0xff);
        return $byt;
      }
     
      public static function bytesToShort($bytes) {
        $val = 0;
        $val = $bytes[1] & 0xff;
        $val <<= 8;
        $val |= $bytes[0] & 0xff;
        return $val;
      }
     
      public static function String2AsciiArray($str) {
        $str = (string) $str;
        $strLength = strlen($str);
        $rtn = array();
        for($i = 0; $i < $strLength; $i++) {
          $rtn[]= ord($str[$i]);
        }
        return $rtn;
      }
    }

    相关介绍:掩码是一串二进制代码对目标字段进行位与运算,屏蔽当前的输入位。

    推荐学习:《PHP视频教程

    以上就是php 怎么实现int转字节的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:字节 php
    上一篇:php大文件发送不了怎么办 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • php中int和intval有什么区别• php可以把数组转化int(整数)数组吗• php数组怎么将元素值转换成int整数类型• php 怎么转换int
    1/1

    PHP中文网