【问题标题】:PHP convert byte string into integerPHP将字节字符串转换为整数
【发布时间】:2014-10-31 12:44:39
【问题描述】:

我正在尝试使用 unpack 将 2 字节字符串转换为 Short/int 数据类型,但它似乎不起作用:

$str = "\x01\xBB";
unpack("S",$str);

它给出 47873 必须返回 443

【问题讨论】:

  • 当您的字符串似乎需要大端解包时,您为什么要使用S
  • S = unsigned short (2 bytes)
  • S =(机器字节顺序)。
  • 那应该用什么代替呢?

标签: php byte unpack


【解决方案1】:

您需要改用n 作为格式字符串。

$str = "\x01\xBB";
unpack("n",$str);

查看此处了解更多格式选项。
http://php.net/manual/en/function.pack.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-01
    • 2022-08-05
    • 1970-01-01
    • 1970-01-01
    • 2021-11-11
    • 2010-11-05
    • 2023-04-10
    相关资源
    最近更新 更多