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颜色相互转换的方法,大家可以参考一下。