【问题标题】:How to get the hex function read from right to left如何从右到左读取十六进制函数
【发布时间】:2021-10-17 05:03:59
【问题描述】:

我目前在读取 HEX 字符串时遇到问题。我有一个 DEC 值写入数据库,值为 5000 的 HEX 是 1388,但是当数据以 HEX 格式写入数据库时​​,它被反转为 8813。

这是它进入数据库的方式:

881300000000000

现在我想查询 HEX 数据转换成 DEC 并显示在我的网页上,我如何从右到左获取 HEX 值,这意味着我必须先获取 HEX 值 13,然后将获取值 88 以便在网络上显示时,数字将是 5000。如果有人有办法帮助我,请发表评论让我知道。我真的很感激。

【问题讨论】:

  • @brombeer 那么到期的目的是什么?
  • 听起来像“大端”与“小端”。您使用的是什么硬件。在转换为十六进制之前,您使用什么代码来获取字节?也许使用REVERSE()
  • @RickJames 我明白你在说什么。因此,我认为它与 Little Endian 一起进入数据库。那么我们有什么方法可以将它转换为 DEC 吗?

标签: php mysql hex endianness


【解决方案1】:
mysql> SELECT HEX(5000);
+-----------+
| HEX(5000) |
+-----------+
| 1388      |
+-----------+
1 row in set (0.00 sec)

显然你的 PHP 代码比这更复杂;请出示给我们,以便我们帮助您修复它。

SELECT 应该产生相同的输出不管底层硬件的终结性。 (MySQL 隐藏了这些差异。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-18
    • 2020-08-16
    • 1970-01-01
    • 1970-01-01
    • 2019-03-02
    • 2018-02-02
    • 1970-01-01
    相关资源
    最近更新 更多