PHP – Convertir une couleur Hexadécimale en code couleur RGB

Pour une application Flex, j’ai eu besoin de traduire un code couleur hexadécimal (utilisé en HTML) en code couleur RGB utilisé par exemple avec la librairie FPDF. Je vous propose donc une petite fonction PHP (nommée hexa2rgb) rapide et simple qui permet de faire cette traduction.

<?php 

function hexa2rgb($hex){ 
	
	if(preg_match("/[0-9a-fA-F]{6}/", $hex) > 0) { 
		
		for($i=0; $i<3; $i++) { 
			
			$temp = substr($hex, 2*$i, 2); 
			$rgb[$i] = 16*hexdec(substr($temp, 0, 1))+hexdec(substr($temp, 1, 1)); 
		
		} 
		
		return $rgb; 
	
	}else{ 
		
		return false; 
	
	} 

}

$test = hexa2rgb('ffffff'); 

if($test !== false) 
	echo $test[0].'-'.$test[1].'-'.$test[2];// Retourne 255-255-255 

?>

 

hexa2rgb

Cette fonction est une version amélioré d’une création trouvée sur cette page.

N’hésitez pas à laisser vos commentaires 😉

Articles pouvant vous intéresser :

Author: Franck Pertegas

Share This Post On

2 Comments

  1. Bien vu l’ami!
    Merci de ce bout de code bien pratique qui me retire une épine du pied… 😉

    Post a Reply
  2. Plus de 7 ans après sa publication ce post m’a servi!Merci bien.
    J’ai juste rajouté ceci au début de la fonction
    «  $hexArray = explode(« # », $hex);
    $hex=$hexArray[0];
    « 
    Pour mon utilisation personnel.

    Post a Reply

Submit a Comment

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *