Convertir une couleur Héxa en rgb et inversement
Category : Function php utile
Added on : Le 30 avril 2015
Author : kotshiro
readings : 1207
594 Personnes aiment ce tuto et vous !!
Note :  [ Rate ]

Voici une function très utile pour convertir une couleur héxa en rgb ou rgba ( avec opacité ).

01function convertColor($color){
02#convert hexadecimal to RGB
03if(!is_array($color) && preg_match("/^[#]([0-9a-fA-F]{6})$/",$color)){
04 
05$hex_R = substr($color,1,2);
06$hex_G = substr($color,3,2);
07$hex_B = substr($color,5,2);
08$RGB = hexdec($hex_R).",".hexdec($hex_G).",".hexdec($hex_B);
09 
10return $RGB;
11}
12 
13#convert RGB to hexadecimal
14else{
15if(!is_array($color)){$color = explode(",",$color);}
16 
17foreach($color as $value){
18$hex_value = dechex($value);
19if(strlen($hex_value)<2){$hex_value="0".$hex_value;}
20$hex_RGB.=$hex_value;
21}
22 
23return "#".$hex_RGB;
24}
25 
26}
Voici comment l'utilisé :

Conversion hexadécimal => RGB


1$couleur = "#f0f0f0";
2 
3echo convertColor($couleur);
Ce qui renverra cette couleur en rgb que voici :

240,240,240

Conversion RGB => hexadecimal


1$couleur = "85,170,102";
2 
3echo convertColor($couleur);
Ce qui renverra l'héxa suivant :
C'est pratique aussi si vous avez une opacité a faire avec votre bgcolor du thème du style:

1$couleur = $bgcolor2;
2 
3$opacitengcolor  =  convertColor($couleur);
4 
5ce qui renverra par exemple pour un background en rgba :
6 
7background: rgba($opacitengcolor, 0.5);
8 
9vous aurez une opacité à 0.5




  

chargement
chargement