[PHP]将RGB或HEX转换为“Long Int”颜色

时间:2010-09-03 00:42:01

标签: php hex rgb long-integer color-picker

对于使用此格式的其他程序,需要将RGB或HEX颜色转换为“Long Int”。虽然不确定“Long Int”颜色格式的具体细节。

可以使用此颜色选择器http://hide-inoki.com/en/soft/chunter/index.html手动生成“Long Int”值,但首选php函数。

hexdec为某些HEX值('FFFFFF','2F2F2F')生成正确的“Long Int”但不生成其他值('123456')。

1 个答案:

答案 0 :(得分:7)

您应该可以使用PHP's hexdec功能。

hexdec('FFFFFF'): 16777215
hexdec('123456'): 1193046

您是说这些值不正确吗?或者您是否错误地使用了dechex?


根据您的评论进行更新,该评论表示“Long Int”格式的颜色“#123456”应为“5649426”:

基数16的

5649426是0x563412,所以很明显你的格式需要BGR而不是RGB。

首先从“RGB”字符串构建一个“BGR”字符串,然后将其提供给hexdec:

$rgb = '123456';
$bgr = substr($rgb,4,2) . substr($rgb,2,2) . substr($rgb,0,2);
print hexdec($bgr);

收益5649426