介绍
这篇文章主要介绍php如何将颜色转十六进制,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
php将颜色转十六进制的方法:首先创建一个php示例文件,然后通过”功能RGBToHex (rgb) {…}”方法将RGB颜色转为十六进制颜色即可。
引用><强> PHP中十六进制颜色与RGB颜色值互转的方法强>
16进制的颜色值通常表示为# FFFFFF,当前也有缩减为# FFF,前提是两位两位必需相同,例如# FEFEFE这种,就不能进行缩减。而RGB的颜色格式是由3组0 ~ 255的数字构成,分别代表红(红色)、绿(绿色),蓝(蓝色)的色值。
那么,将16进制转换为RGB色值,其实就是分别把#号后面的两位作为一个单位转换成十进制。
代码如下:
/* *, *,将16进制颜色转换为RGB * author www.jb51.net */, function hex2rgb (hexColor美元){ 美元,颜色=str_replace (& # 39; # & # 39; & # 39; & # 39;, hexColor美元); 美元,if (strlen(颜色)祝辞,3){ ,$ rgb=阵列( & # 39;才能" # 39;=祝辞函数(substr(颜色、美元0,2)), & # 39;才能舌鳎# 39;=祝辞函数(substr(美元颜色2 2)), & # 39;才能b # 39;函数=祝辞(substr(美元颜色、4、2)) ,); ,其他}{ ,$ r=substr(颜色、美元0,1)只substr(颜色、美元0,1); 美元,$ g=substr(颜色,1,1)只substr(颜色、美元1,1); ,$ b=substr($颜色,2,1)只substr($颜色,2,- 1); $ rgb=阵列(大敌; & # 39;才能" # 39;=祝辞函数($ r), & # 39;才能舌鳎# 39;=祝辞函数(g)美元, & # 39;才能b # 39;函数=比;(b)美元 ,); ,} ,return rgb美元; }另一种写法
/* * ,,*,十六进制转RGB ,,*,@param string color 美元;16进制颜色值 ,,*,@return 数组 ,,*/public 才能static function  hex2rgb(颜色),{ ,,,hexColor 美元;=,str_replace(& # 39; # & # 39;,, & # 39; & # 39;,,美元颜色); ,,,lens 美元;=,strlen ($ hexColor); ,,,if (lens 美元;!=,3,,,,lens 美元;!=,6),{ ,,,,,return 假; ,,,} ,,,newcolor 美元;=,& # 39;& # 39;; ,,,if (==lens 美元;3),{ ,,,,,for ($小姐:=,0;,美元小姐:& lt;,镜头;美元,美元我+ +),{ ,,,,,,,newcolor 美元。=,hexColor美元($ i),只hexColor美元($ i); ,,,,,} ,,,},{else ,,,,,newcolor 美元;=,hexColor美元; ,,,} ,,,hex 美元;=,函数(newcolor美元,,2); ,,,rgb 美元;=,[]; ,,,foreach (hex 美元;as key 美元;=祝辞,vls美元),{ ,,,,,rgb[],美元=,函数(vls); ,,,} ,,,return rgb美元; 以前,,}><强> RGB颜色和十六进制颜色互转强>
/* * ,,*,RGB转,十六进制 ,,*,@param rgb 美元;RGB颜色的字符串,如:RGB (255255255); ,,*,@return string 十六进制颜色值,如:# FFFFFF ,,*/function 才能RGBToHex (rgb) { ,,,regexp 美元;=,“/^ rgb \ (([0 - 9] {0, 3}), \ \ s * ([0 - 9] {0, 3}), \ \ s * ([0 - 9] {0, 3}) \)/?; ,,,re 美元;=,preg_match (regexp美元,,rgb,, $匹配); ,,,re 美元;=,array_shift($匹配); ,,,hexColor 美元;=,“#”; hex 美元,,,,=,数组(& # 39;0 & # 39;,,& # 39;1 & # 39;,,& # 39;2 & # 39;,,& # 39;3 & # 39;,,& # 39;4 & # 39;,,& # 39;5 & # 39;,,& # 39;6 & # 39;,,& # 39;7 & # 39;,,& # 39;8 & # 39;,,& # 39;9 & # 39;,,& # 39;一个# 39;,,& # 39;b # 39;,, & # 39; c # 39;,, & # 39; d # 39;,, & # 39; e # 39;,, & # 39; f # 39;); ,,,for ($小姐:=,0;,美元小姐:& lt;, 3;,我+ +美元),{ ,,,,,r 美元;=,空; ,,,,,c 美元;=,$匹配($ i); ,,,,,hexAr 美元;=,数组(); ,,,,,while (c 美元;祝辞,16),{ ,,,,,,,r 美元;=,c 美元;%,16; ,,,,,,,c 美元;=,(c 美元/,16),在祝辞,0; ,,,,,,,array_push (hexAr美元,,十六进制[$ r]); ,,,,,} ,,,,,array_push (hexAr美元,,十六进制[c]美元); ,,,,,ret 美元;=,array_reverse ($ hexAr); ,,,,,item 美元;=,内爆(& # 39;& # 39;,,随著美元); ,,,,,item 美元;=,str_pad(美元,,2,,& # 39;0 & # 39;,,STR_PAD_LEFT); ,,,,,hexColor 美元。=,美元项目; ,,,} ,,,return hexColor美元; ,,} ,/* * ,,*,十六进制,转RGB ,,*/function 才能hex2rgb (hexColor美元),{ null null null null null null null null null null null null null null null null null null null nullphp如何将颜色转十六进制