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 相关文章推荐
PHP中的extract的作用分析
Apr 09 PHP
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
Jul 01 PHP
PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]
Dec 16 PHP
PHP中几种常见的超时处理全面总结
Sep 11 PHP
解析PHP函数array_flip()在重复数组元素删除中的作用
Jun 27 PHP
php颜色转换函数hex-rgb(将十六进制格式转成十进制格式)
Sep 23 PHP
php统计文章排行示例
Mar 04 PHP
yii数据库的查询方法
Dec 28 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
Mar 21 PHP
php5.3后静态绑定用法详解
Nov 11 PHP
php readfile()修改文件上传大小设置
Aug 11 PHP
PHP中strtr与str_replace函数运行性能简单测试示例
Jun 22 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
greybox——不开新窗口看新的网页
2007/02/20 Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
2013/11/19 Javascript
jQuery$命名冲突怎么办如何解决
2014/01/16 Javascript
jQuery中[attribute=value]选择器用法实例
2014/12/31 Javascript
Javascript验证Visa和MasterCard信用卡号的方法
2015/07/27 Javascript
JavaScript获取页面中超链接数量的方法
2015/11/09 Javascript
实例详解JSON数据格式及json格式数据域字符串相互转换
2016/01/07 Javascript
jQuery使用模式窗口实现在主页面和子页面中互相传值的方法
2016/03/01 Javascript
jquery控制页面的展开和隐藏实现方法(推荐)
2016/10/15 Javascript
jQuery Chosen通用初始化
2017/03/07 Javascript
jquery实现下拉菜单的手风琴效果
2017/07/23 jQuery
jquery 实现拖动文件上传加载进度条功能
2018/03/18 jQuery
bootstrap-table实现表头固定以及列固定的方法示例
2019/03/07 Javascript
JS函数动态传递参数的方法分析【基于arguments对象】
2019/06/05 Javascript
Vue之beforeEach非登录不能访问的实现(代码亲测)
2019/07/18 Javascript
vue 解决data中定义图片相对路径页面不显示的问题
2020/08/13 Javascript
js实现右键弹出自定义菜单
2020/09/08 Javascript
python学习笔记:字典的使用示例详解
2014/06/13 Python
Python实现全局变量的两个解决方法
2014/07/03 Python
Python使用Supervisor来管理进程的方法
2015/05/28 Python
Python中数字以及算数运算符的相关使用
2015/10/12 Python
bpython 功能强大的Python shell
2016/02/16 Python
Python多进程同步简单实现代码
2016/04/27 Python
python3批量删除豆瓣分组下的好友的实现代码
2016/06/07 Python
pandas Dataframe行列读取的实例
2018/06/08 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
2019/02/18 Python
详解python之heapq模块及排序操作
2019/04/04 Python
解决python执行不输出系统命令弹框的问题
2019/06/24 Python
基于pandas向csv添加新的行和列
2020/05/25 Python
关于老式浏览器兼容HTML5和CSS3的问题
2016/06/01 HTML / CSS
科沃斯机器人官网商城:Ecovacs
2016/08/29 全球购物
房产委托公证书
2014/04/08 职场文书
医院标语大全
2014/06/23 职场文书
2014年基层党建工作总结
2014/11/11 职场文书
2016年元旦寄语
2015/08/17 职场文书
2016年第二十届“母亲节暨幸福工程救助贫困母亲活动日”活动总结
2016/04/06 职场文书