php如何实现int转字节

发布时间:2023-02-03 10:38:28 作者:iii
来源:亿速云 阅读:72

这篇文章主要介绍了php如何实现int转字节的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php如何实现int转字节文章都会有所收获,下面我们一起来看看吧。

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

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如何实现int转字节”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“php如何实现int转字节”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. shell 脚本如何安装PHP扩展
  2. linux下如何开启php的sockets扩展支持

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

php int

上一篇:debian php重启失效如何解决

下一篇:php大文件发送不了如何解决

相关阅读

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

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