【发布时间】:2020-11-11 18:33:11
【问题描述】:
我将十六进制颜色作为十进制数存储在数据库中,我想使用 dechex() PHP 命令将其转换回十六进制。它适用于除一种以外的所有颜色。这是我的部分代码。
$color = '#'.dechex($crew->color);
如果我将 $crew->color 设置为 2139062017,它将返回该颜色的正常十六进制值,但如果我将 $crew->color 设置为负值,则会得到错误的输出。例如,如果我将$crew->color 设置为-9849601,我的输出看起来像这样#ffffffffff69b4ff(这接近正确,因为输出应该是#ff69b4ff,我只是在颜色字符串中得到那些额外的“f”。
有什么建议可以摆脱那些“f”,或者我应该怎么做才能修复 dechex() 命令?
【问题讨论】: