w moim kodu mamKonwersja RGB hex wartości kolorów w PHP
$color = rgb(255, 255, 255);
chcę konwersji na hex koloru code.Out umieścić jak
$color = '#ffffff';
w moim kodu mamKonwersja RGB hex wartości kolorów w PHP
$color = rgb(255, 255, 255);
chcę konwersji na hex koloru code.Out umieścić jak
$color = '#ffffff';
Można spróbować tej
function rgb2html($r, $g=-1, $b=-1)
{
if (is_array($r) && sizeof($r) == 3)
list($r, $g, $b) = $r;
$r = intval($r); $g = intval($g);
$b = intval($b);
$r = dechex($r<0?0:($r>255?255:$r));
$g = dechex($g<0?0:($g>255?255:$g));
$b = dechex($b<0?0:($b>255?255:$b));
$color = (strlen($r) < 2?'0':'').$r;
$color .= (strlen($g) < 2?'0':'').$g;
$color .= (strlen($b) < 2?'0':'').$b;
return '#'.$color;
}
Możesz użyć następującej funkcji
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;
}
Następnie echo fromRGB(115,25,190);
wypisze # 7319be
Prosty sprintf
zrobi.
$color = sprintf("#%02x%02x%02x", 13, 0, 255); // #0d00ff
rozbić format:
#
- dosłowny znak #%
- start specyfikacji konwersji0
- znak, który będzie używany do wypełnienia2
- minimalna liczba znaków, które powinna spowodować konwersja, uzupełniona w razie potrzebyx
- argument jest traktowany jako liczba całkowita i przedstawiony jako liczba szesnastkowa z małych liter%02x%02x
- powyższe cztery powtórzono dwukrotnie więcejJak elegancki! Dobra robota! – Michael
Wypróbuj ten prosty kawałek kodu poniżej. W kodzie można również dynamicznie przekazywać kod rgb.
$rgb = (123,222,132);
$rgbarr = explode(",",$rgb,3);
echo sprintf("#%02x%02x%02x", $rgbarr[0], $rgbarr[1], $rgbarr[2]);
Będzie to kod zwrotny jak # 7bde84
Pierwszy wiersz kodu wygląda niepoprawnie, czy ma to być tablica, czy zapomniałeś nazwy funkcji "rgb"? – donquixote
To jest tablica. Sprawdziło się bardzo dobrze, więc nie znalazłem nic złego w tym. – TESTasy
Tablica z okrągłymi nawiasami w PHP? https://3v4l.org/19C2v – donquixote
gist.github.com/Pushplaybang/5432844 ... Zobacz – Tushar