<?php
function hsl2rgb($H, $S, $V) {
$H *= 6;
$h = intval($H);
$H -= $h;
$V *= 255;
$m = $V*(1 - $S);
$x = $V*(1 - $S*(1-$H));
$y = $V*(1 - $S*$H);
$a = [[$V, $x, $m], [$y, $V, $m],
[$m, $V, $x], [$m, $y, $V],
[$x, $m, $V], [$V, $m, $y]][$h];
return sprintf("#%02X%02X%02X", $a[0], $a[1], $a[2]);
}
function hue($tstr) {
#return unpack('L', hash('adler32', $tstr, true))[1];
#adler32
return crc32($tstr);
#return md5($tstr);
}
$phrase = "1";
$col = hsl2rgb(hue($phrase)/0xFFFFFFFF, 0.4, 1);
printf('<pre><span style="background-color:%s">%f</span></pre>\n ', $col, hue($phrase)/0xFFFFFFFF);
$phrase = "2";
$col = hsl2rgb(hue($phrase)/0xFFFFFFFF, 0.4, 1);
printf('<pre><span style="background-color:%s">%f</span></pre>\n ', $col, hue($phrase)/0xFFFFFFFF);
$phrase = "3";
$col = hsl2rgb(hue($phrase)/0xFFFFFFFF, 0.4, 1);
printf('<pre><span style="background-color:%s">%f</span></pre>\n ', $col, hue($phrase)/0xFFFFFFFF);
preferences:
49.19 ms | 402 KiB | 5 Q