php如何将颜色转十六进制

  介绍

这篇文章主要介绍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   null

php如何将颜色转十六进制