php Hex RGB颜色值互换的使用


Posted in PHP onMay 10, 2013
<?php
echo implode ( ",", HexToRGB ( "#F7F7DA" ) ) . "<br/>";
echo RGBToHex ( "rgb(247,247,218)" )?>
<?php
function HexToRGB($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 
    );
}
function RGBToHex($rgb) {
    $regexp = "/^rgb\(([0-9]{0,3})\,\s*([0-9]{0,3})\,\s*([0-9]{0,3})\)/";
    $re = preg_match ( $regexp, $rgb, $match );
    $re = array_shift ( $match );
    $hexColor = "#";
    $hex = array (
            '0',
            '1',
            '2',
            '3',
            '4',
            '5',
            '6',
            '7',
            '8',
            '9',
            'A',
            'B',
            'C',
            'D',
            'E',
            'F' 
    );
    for($i = 0; $i < 3; $i ++) {
        $r = null;
        $c = $match [$i];
        $hexAr = array ();
        while ( $c > 16 ) {
            $r = $c % 16;
            $c = ($c / 16) >> 0;
            array_push ( $hexAr, $hex [$r] );
        }
        array_push ( $hexAr, $hex [$c] );
        $ret = array_reverse ( $hexAr );
        $item = implode ( '', $ret );
        $item = str_pad ( $item, 2, '0', STR_PAD_LEFT );
        $hexColor .= $item;
    }
    return $hexColor;
}
?>
PHP 相关文章推荐
vs中通过剪切板循环来循环粘贴不同内容
Apr 30 PHP
PHP中文件读、写、删的操作(PHP中对文件和目录操作)
Mar 06 PHP
PHP jQuery表单,带验证具体实现方法
Feb 15 PHP
php通过数组实现多条件查询实现方法(字符串分割)
May 06 PHP
微信公众平台实现获取用户OpenID的方法
Apr 15 PHP
Codeigniter的dom类用法实例
Jun 26 PHP
又十个超级有用的PHP代码片段
Sep 24 PHP
高质量PHP代码的50个实用技巧必备(下)
Jan 22 PHP
Zend Framework动作助手Redirector用法实例详解
Mar 05 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
Nov 05 PHP
简单谈谈PHP中的trait
Feb 25 PHP
Laravel 自带的Auth验证登录方法
Sep 30 PHP
基于PHP生成静态页的实现方法
May 10 #PHP
深入PHP数据缓存的使用说明
May 10 #PHP
基于PHP常用函数的用法详解
May 10 #PHP
解析php DOMElement 操作xml 文档的实现代码
May 10 #PHP
PHP 自定义错误处理函数的使用详解
May 10 #PHP
PHP 类相关函数的使用详解
May 10 #PHP
解析PHP缓存函数的使用说明
May 10 #PHP
You might like
centos 5.6 升级php到5.3的方法
2011/05/14 PHP
php ajax实现文件上传进度条
2016/03/29 PHP
Javascript 判断 object 的特定类转载
2007/02/01 Javascript
『jQuery』.html(),.text()和.val()的概述及使用
2013/04/22 Javascript
控制input输入框中提示信息的显示和隐藏的方法
2014/02/12 Javascript
JS常用字符串处理方法应用总结
2014/05/22 Javascript
javascript实现类似java中getClass()得到对象类名的方法
2015/07/27 Javascript
JS模仿编辑器实时改变文本框宽度和高度大小的方法
2015/08/17 Javascript
AngularJS中的$watch(),$digest()和$apply()区分
2016/04/04 Javascript
深入理解jQuery之防止冒泡事件
2016/05/24 Javascript
Google 地图控件集详解及实例代码
2016/08/06 Javascript
JavaScript数组去重的6个方法
2017/01/21 Javascript
Angular.JS通过指令操作DOM的方法
2017/05/10 Javascript
vue绑定class与行间样式style详解
2017/08/16 Javascript
解决vue-router中的query动态传参问题
2018/03/20 Javascript
解决vue-cli3 使用子目录部署问题
2018/07/19 Javascript
详解Ubuntu安装angular-cli遇到的坑
2018/09/08 Javascript
[54:10]完美世界DOTA2联赛PWL S2 Magma vs FTD 第二场 11.29
2020/12/03 DOTA
python实现telnet客户端的方法
2015/04/15 Python
为什么str(float)在Python 3中比Python 2返回更多的数字
2018/10/16 Python
在python环境下运用kafka对数据进行实时传输的方法
2018/12/27 Python
Python实现简单层次聚类算法以及可视化
2019/03/18 Python
Flask框架学习笔记之模板操作实例详解
2019/08/15 Python
Python While循环语句实例演示及原理解析
2020/01/03 Python
python使用pandas抽样训练数据中某个类别实例
2020/02/28 Python
python绘制趋势图的示例
2020/09/17 Python
Python WebSocket长连接心跳与短连接的示例
2020/11/24 Python
canvas拼图功能实现代码示例
2018/11/21 HTML / CSS
Pure Collection美国官网:来自英国羊绒专家的奢华羊绒
2017/11/19 全球购物
建筑工程自我鉴定
2013/10/18 职场文书
大学生学年自我鉴定
2014/02/10 职场文书
办公室综合文员岗位职责范本
2014/02/13 职场文书
教师竞聘演讲稿
2014/05/16 职场文书
毕业生入职感言
2015/07/31 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
安装Ruby和 Rails的详细步骤
2022/04/19 Ruby