hi,欢迎访问本站!
当前位置: 首页编程开发正文

php中16进制颜色与rgb颜色相互转换的方法

墨初 编程开发 544阅读

在html网页中字体或一些元素的背景色都是以16进制或rbg来表示,而php中可以通过一些自定义的函数来将16进制的颜色转为rgb或使用rgb转为十六进制,下面是具体的操作方法。

php颜色转换的方法

方法1:php中16进制颜色转为rgb颜色的方法

/**
 * # php 16进制转为rbg的方法
 * @param string $hex 16进制
 * 
 * @return array 
 * @https://www.73so.com
 */
function wpjam_hex2rgb($hex) 
{
$hex = str_replace("#", "", $hex);
if(strlen($hex) == 3) {
   $r = hexdec(substr($hex,0,1).substr($hex,0,1));
   $g = hexdec(substr($hex,1,1).substr($hex,1,1));
   $b = hexdec(substr($hex,2,1).substr($hex,2,1));
} else {
   $r = hexdec(substr($hex,0,2));
   $g = hexdec(substr($hex,2,2));
   $b = hexdec(substr($hex,4,2));
}
 
return array($r, $g, $b);
}
var_dump(wpjam_hex2rgb('#fff'));

上面就是一个将16进制转为rgb颜色的方法,注意函数输出的是数组,自己可以转换一下。

方法2:rgb转为16进制的方法

/**
 * # php rgb转为16进制的方法
 * @param string $rgb rgb颜色
 * 
 * @return string
 * @https://www.73so.com
 */
function wpjam_rgb2hex($rgb) 
{
$hex = "#";
$hex .= str_pad(dechex($rgb[0]), 2, "0", STR_PAD_LEFT);
$hex .= str_pad(dechex($rgb[1]), 2, "0", STR_PAD_LEFT);
$hex .= str_pad(dechex($rgb[2]), 2, "0", STR_PAD_LEFT);
 
return $hex;
}
//函数调用
var_dump(wpjam_rgb2hex(array(0,82,217)));

以上就是php中关于16进制颜色与rgb颜色相互转换的方法,大家可以参考一下。

声明:无特别说明,转载请标明本文来源!
相关推荐