doingword.com

Function to convert an hexadecimal to rgb value

February 16th, 2007

Params:$hex: Hexadecimal value
Return:Array with the decimal value for red, gren and blue.

function hexToRgb($hex)
  1. {
  2. //Delete the # char (if exist)
  3. if (0 === strpos($hex, '#')) {
  4. $hex = substr($hex, 1);
  5. } else if (0 === strpos($hex, '&H')) {
  6. $hex = substr($hex, 2);
  7. }
  8. //get the 3 hex values
  9. $cutpoint = ceil(strlen($hex) / 2)-1;
  10. $rgb = explode(':', wordwrap($hex, $cutpoint, ':', $cutpoint), 3);
  11.  
  12. //Convert to  decimal
  13. $rgb[0] = (isset($rgb[0]) ? hexdec($rgb[0]) : 0);
  14. $rgb[1] = (isset($rgb[1]) ? hexdec($rgb[1]) : 0);
  15. $rgb[2] = (isset($rgb[2]) ? hexdec($rgb[2]) : 0);
  16.  
  17. return  $rgb;
  18. }
[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Entry Filed under: Functions, Php


Leave a Comment

Required

Required, hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed