友荐云推荐

本文实例讲述了PHP实现将颜色hex值转换成rgb(将十六进制格式转成十进制格式)的方法。分享给大家供大家参考,具体如下:

<?php
function hex2rgb( $colour ) {
if ( $colour[0] == '#' ) {
$colour = substr( $colour, 1 );
}
if ( strlen( $colour ) == 6 ) {
list( $r, $g, $b ) = array( $colour[0] . $colour[1], $colour[2] . $colour[3], $colour[4] . $colour[5] );
} elseif ( strlen( $colour ) == 3 ) {
list( $r, $g, $b ) = array( $colour[0] . $colour[0], $colour[1] . $colour[1], $colour[2] . $colour[2] );
} else {
return false;
}
$r = hexdec( $r );
$g = hexdec( $g );
$b = hexdec( $b );
return array( 'red' => $r, 'green' => $g, 'blue' => $b );
}
//测试
var_dump(hex2rgb("#FF6633"));

运行结果如下:

array(3) {
["red"]=>
int(255)
["green"]=>
int(102)
["blue"]=>
int(51)
}