在 PHP 中将 RGB 转换为十六进制颜色值

php
2022-08-30 15:46:12

在我的代码中,我有

$color = rgb(255, 255, 255);

我想把它转换成十六进制颜色代码。出放像

$color = '#ffffff';

答案 1

一个简单的冲刺就可以了。

$color = sprintf("#%02x%02x%02x", 13, 0, 255); // #0d00ff

要分解格式:

  • #- 文字字符#
  • %- 转换规范的开始
  • 0- 用于填充的字符
  • 2- 转换应产生的最小字符数,根据需要填充上述字符
  • x- 参数被视为整数,并表示为小写字母的十六进制数
  • %02x%02x- 以上四个重复两次以上

答案 2

您可以使用以下功能

function fromRGB($R, $G, $B)
{

    $R = dechex($R);
    if (strlen($R)<2)
    $R = '0'.$R;

    $G = dechex($G);
    if (strlen($G)<2)
    $G = '0'.$G;

    $B = dechex($B);
    if (strlen($B)<2)
    $B = '0'.$B;

    return '#' . $R . $G . $B;
}

然后,将打印#7319beecho fromRGB(115,25,190);

来源: RGB 到十六进制颜色和十六进制颜色到 RGB - PHP


推荐