conversion couleurs

Convertir une couleur HTML en composantes RGB

Comment transformer une couleur en notation HTML vers du RGB

couleur html, couleur rgb, couleur php, rgb php, php rgb, rgb couleur, notation html couleur, html rgb, convertisseur couleur html, html couleur, convertir couleur, couleur html caracteres, rgb html, conversion couleur html, chaine couleur html

La fonction html2rgb suivante permet de transformer une couleur en notation html vers un tableau contenant les composantes RGB de la couleur.

Cette fonction supporte la notation html à 3 et 6 caractères et fonctionne avec ou sans le # initial de la couleur html.

La fonction retourne false si jamais la chaine de caractère fait plus de 6 caractères (sans compter l'éventuel #).

Fonction html2rgb

<?php
/**
* Retourne les composantes RGB d'une couleur html
*
* @param string $color
* @return mixed array
*/
function html2rgb ($color)
{
/*On supprime le # eventuel de la couleur html*/
if ($color[0] == '#')
{
$color = substr($color, 1);
}
$strlen = strlen($color);
/*Si on utilise la notation de 6 caractères*/
if ($strlen === 6)
{
$color = array(
$color[0].$color[1],
$color[2].$color[3],
$color[4].$color[5]
);
}
/*Si on utilise la notation html à 3 caractères*/
elseif ($strlen === 3)
{
$color = array(
$color[0].$color[0],
$color[1].$color[1],
$color[2].$color[2]
);
}
else
{
return false;
}
foreach ($color as &$c)
{
$c = hexdec($c);
}
return $color;
}
?>

Exemple de conversion avec html2rgb

Voici quelques exemples de conversion de couleur html en code valeurs RGB :

<?php
var_dump(html2rgb ('28000a'));
/**
* array
* 0 => int 40
* 1 => int 0
* 2 => int 10
*/
var_dump(html2rgb ('#28000a'));
/**
* array
* 0 => int 40
* 1 => int 0
* 2 => int 10
*/
var_dump(html2rgb ('#280'));
/**
* array
* 0 => int 34
* 1 => int 136
* 2 => int 0
*/
var_dump(html2rgb ('280'));
/**
* array
* 0 => int 34
* 1 => int 136
* 2 => int 0
*/
var_dump(html2rgb ('#28032435465'));
/**
* false
*/
?>

Image : Marco Braun

 

Vidéos drôles

Du fingerboard en taille réelle Un bateau accoste sur la plage Un policier saute une barrière Les rouquins ont une ame C'est toujours mieux de se faire rouler dessus Un problème moteur chez ses soldats Un saut raté dans la piscine Démonstration de Kung Fu par un soldat coréen Comment ne pas faire du vin chaud au micro onde