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中使用PDF文档功能
Oct 09 PHP
php开发文档 会员收费1期
Aug 14 PHP
探讨php中防止SQL注入最好的方法是什么
Jun 10 PHP
深入PHP购物车模块功能分析(函数讲解,附源码)
Jun 25 PHP
php利用curl抓取新浪微博内容示例
Apr 27 PHP
php输出xml必须header的解决方法
Oct 17 PHP
MacOS 安装 PHP的图片裁剪扩展Tclip
Mar 25 PHP
PHP抽奖算法程序代码分享
Oct 08 PHP
Symfony2框架学习笔记之HTTP Cache用法详解
Mar 18 PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
Mar 15 PHP
PHP生成二维码与识别二维码的方法详解【附源码下载】
Mar 07 PHP
php转换上传word文件为PDF的方法【基于COM组件】
Jun 10 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实现对二维数组某个键排序的方法
2016/09/14 PHP
使用javascript访问XML数据的实例
2006/12/27 Javascript
JS事件Event元素(兼容IE,Firefox,Chorme)
2012/11/01 Javascript
Extjs Gird 支持中文拼音排序实现代码
2013/04/15 Javascript
js去除空格的12种实用方法
2013/11/08 Javascript
javascript学习笔记--数字格式类型
2014/05/22 Javascript
jquery ui bootstrap 实现自定义风格
2014/11/14 Javascript
JavaScript编程中布尔对象的基本使用
2015/10/25 Javascript
JavaScript必知必会(九)function 说起 闭包问题
2016/06/08 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
2016/06/12 Javascript
微信小程序 教程之条件渲染
2016/10/18 Javascript
原生js实现旋转木马轮播图效果
2017/02/27 Javascript
浅谈Node.js轻量级Web框架Express4.x使用指南
2017/05/03 Javascript
分享Bootstrap简单表格、表单、登录页面
2017/08/04 Javascript
基于JavaScript 实现拖放功能
2019/09/12 Javascript
JS实现可控制的进度条
2020/03/25 Javascript
[01:22:42]2014 DOTA2华西杯精英邀请赛 5 24 DK VS LGD
2014/05/26 DOTA
[02:57]2014DOTA2国际邀请赛-观众采访
2014/07/19 DOTA
轻松理解Python 中的 descriptor
2017/09/15 Python
Python随机生成身份证号码及校验功能
2018/12/04 Python
PyCharm设置每行最大长度限制的方法
2019/01/16 Python
python列表使用实现名字管理系统
2019/01/30 Python
Python Django框架url反向解析实现动态生成对应的url链接示例
2019/10/18 Python
Python中顺序表原理与实现方法详解
2019/12/03 Python
python装饰器使用实例详解
2019/12/14 Python
Python for循环与getitem的关系详解
2020/01/02 Python
python多项式拟合之np.polyfit 和 np.polyld详解
2020/02/18 Python
python求前n个阶乘的和实例
2020/04/02 Python
python进度条显示之tqmd模块
2020/08/22 Python
Chi Chi London官网:购买连衣裙和礼服
2020/10/25 全球购物
大学生职业生涯规划书前言
2014/01/09 职场文书
工厂总经理岗位职责
2014/02/07 职场文书
公司领导班子对照材料
2014/08/18 职场文书
致运动员的广播稿
2015/08/19 职场文书
村官2015年度工作总结
2015/10/14 职场文书
使用golang编写一个并发工作队列
2021/05/08 Golang