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中通过ADODB库实现调用Access数据库之修正版本
Dec 31 PHP
php flush类输出缓冲剖析
Oct 19 PHP
PHP游戏编程25个脚本代码
Feb 08 PHP
PHP简洁函数(PHP简单明了函数语法)
Jun 10 PHP
PHP中文分词 自动获取关键词介绍
Nov 13 PHP
PHP rawurlencode与urlencode函数的深入分析
Jun 08 PHP
php的ajax简单实例
Feb 27 PHP
thinkphp四种url访问方式详解
Nov 28 PHP
php数组使用规则分析
Feb 27 PHP
php简单生成随机数的方法
Jul 30 PHP
php生成唯一数字id的方法汇总
Nov 18 PHP
php给数组赋值的实例方法
Sep 26 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
浅析php中json_encode()和json_decode()
2014/05/25 PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
2018/01/15 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
2020/02/27 PHP
js+FSO遍历文件夹下文件并显示
2007/03/07 Javascript
location.search在客户端获取Url参数的方法
2010/06/08 Javascript
13个绚丽的Jquery 界面设计网站推荐
2010/09/28 Javascript
缓动函数requestAnimationFrame 更好的实现浏览器经动画
2012/12/07 Javascript
js实现点小图看大图效果的思路及示例代码
2013/10/28 Javascript
获取3个数组不重复的值的具体实现
2013/12/30 Javascript
使用jQuery的easydrag插件实现可拖动的DIV弹出框
2016/02/19 Javascript
vue页面使用阿里oss上传功能的实例(二)
2017/08/09 Javascript
jQuery中 DOM节点操作方法大全
2017/10/12 jQuery
ES6之Proxy的get方法详解
2019/10/11 Javascript
ES6 Promise对象概念及用法实例详解
2019/10/15 Javascript
vue实现弹幕功能
2019/10/25 Javascript
Vue过渡效果之CSS过渡详解(结合transition,animation,animate.css)
2020/02/05 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
vue实现放大镜效果
2020/09/17 Javascript
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
wxPython事件驱动实例详解
2014/09/28 Python
Python中条件判断语句的简单使用方法
2015/08/21 Python
Python文件操作之合并文本文件内容示例代码
2017/09/19 Python
python3连接MySQL数据库实例详解
2018/05/24 Python
Django Rest framework之权限的实现示例
2018/12/17 Python
Python 获取windows桌面路径的5种方法小结
2019/07/15 Python
python十进制转二进制的详解
2020/02/07 Python
matplotlib 生成的图像中无法显示中文字符的解决方法
2020/06/10 Python
韩国著名的在线综合购物网站:Akmall
2016/08/07 全球购物
将相和教学反思
2014/02/04 职场文书
小学生期末评语
2014/04/21 职场文书
《微笑着面对生活》优秀演讲稿范文
2014/09/23 职场文书
有限公司股东合作协议书
2014/10/29 职场文书
工作表扬信
2015/01/17 职场文书
企业开业庆典答谢词
2015/01/20 职场文书
自愿离婚协议书2015
2015/01/26 职场文书
Win11绿屏怎么办?Win11绿屏死机的解决方法
2021/11/21 数码科技