- Stefanescu Mihai a postat in Paginare in PHP
- johhny a postat in Paginare in PHP
- Stefanescu Mihai a postat in Cum pot afisa eroarea cand utilizatorul a scris un username gresit sau o parola gresita?
- madalin a postat in Cum pot afisa eroarea cand utilizatorul a scris un username gresit sau o parola gresita?
- Stefanescu Mihai a postat in Featureuri site
Script PHP de convertire HEX in RGB
Convertirea culorilor din sistemul HEX in sistemul RGB este necesara in diverse cazuri pentru a asigura functionarea corecta a site-ului tau.
function hex2rgb($hex) {
$hex = str_replace("#", "", $hex);
if(strlen($hex) == 3) {
$r = hexdec(substr($hex,0,1).substr($hex,0,1));
$g = hexdec(substr($hex,1,1).substr($hex,1,1));
$b = hexdec(substr($hex,2,1).substr($hex,2,1));
} else {
$r = hexdec(substr($hex,0,2));
$g = hexdec(substr($hex,2,2));
$b = hexdec(substr($hex,4,2));
}
$rgb = array($r, $g, $b);
//return implode(",", $rgb); // returns the rgb values separated by commas
return $rgb; // returns an array with the rgb values
}
Aceasta functie functioneaza la fel de bine si cu codurile HEX prescuratate (#f00) cat si cu cele complete (#ff0000). Accepta si semnul de inceput (#). Se poate observa ca avem doua linii de returnare la sfarsit-ul functiei. Prima, ce-a comentata, returneaza valorile RGB separate de virgula. A doua, ce-a standard va returna unarray cu valorile RGB.
Avand aceasta functie o putem folosi in felul urmator:
$rgb = hex2rgb("#cc0");
print_r($rgb);
Functia de mai sus va afisa:
Array ( [0] => 204 [1] => 204 [2] => 0 )
Daca tot convertim codurile HEX in RGB, de ce sa nu convertim si RGB in HEX?
function rgb2hex($rgb) {
$hex = "#";
$hex .= str_pad(dechex($rgb[0]), 2, "0", STR_PAD_LEFT);
$hex .= str_pad(dechex($rgb[1]), 2, "0", STR_PAD_LEFT);
$hex .= str_pad(dechex($rgb[2]), 2, "0", STR_PAD_LEFT);
return $hex; // returns the hex value including the number sign (#)
}
Aceasta va functiona in felul urmator:
$rgb = array( 255, 255, 255 ); $hex = rgb2hex($rgb); echo $hex;
Si va afisa:
#fffff
Comentarii
Inca nu au fost postate comentarii, fii primul care posteaza un comentariu!