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 相关文章推荐
ThinkPHP中实例Model方法的区别说明
Aug 21 PHP
PHPnow安装服务[apache_pn]失败的问题的解决方法
Sep 10 PHP
基于PHP编程注意事项的小结
Apr 27 PHP
可以保证单词完整性的PHP英文字符串截取代码分享
Jul 15 PHP
PHP实现过滤掉非汉字字符只保留中文字符
Jun 04 PHP
php邮件发送的两种方式
Apr 28 PHP
php数组冒泡排序算法实例
May 06 PHP
PHP Header用于页面跳转时的几个注意事项
Oct 21 PHP
Yii2 中实现单点登录的方法
Mar 09 PHP
laravel 实现登陆后返回登陆前的页面方法
Oct 03 PHP
php中用unset销毁变量并释放内存
May 10 PHP
imagettftext() 失效,不起作用
Mar 09 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
header中Content-Disposition的作用与使用方法
2012/06/13 PHP
PHP也能干大事之PHP中的编码解码详解
2015/04/20 PHP
PHP register_shutdown_function()函数的使用示例
2015/06/23 PHP
PHP getDocNamespaces()函数讲解
2019/02/03 PHP
JavaScript字符串对象substr方法入门实例(用于截取字符串)
2014/10/16 Javascript
js实现仿qq消息的弹出窗效果
2016/01/06 Javascript
TypeScript Type Innference(类型判断)
2016/03/10 Javascript
JavaScript高级程序设计(第三版)学习笔记1~5章
2016/03/11 Javascript
快速使用Bootstrap搭建传送带
2016/05/06 Javascript
Javascript 对cookie操作详解及实例
2016/12/29 Javascript
简单的React SSR服务器渲染实现
2018/12/11 Javascript
react项目从新建到部署的实现示例
2021/02/19 Javascript
[05:22]DOTA2 2015国际邀请赛中国区预选赛首日TOP10
2015/05/26 DOTA
[01:09:23]KG vs TNC 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
查看Python安装路径以及安装包路径小技巧
2015/04/28 Python
python实现将html表格转换成CSV文件的方法
2015/06/28 Python
Python中集合的内建函数和内建方法学习教程
2015/08/19 Python
Python+django实现文件上传
2016/01/17 Python
Django中ORM表的创建和增删改查方法示例
2017/11/15 Python
Python中使用支持向量机SVM实践
2017/12/27 Python
python如何去除字符串中不想要的字符
2020/07/05 Python
python matlibplot绘制3D图形
2018/07/02 Python
Python数据结构之栈、队列及二叉树定义与用法浅析
2018/12/27 Python
python求质数列表的例子
2019/11/24 Python
Python线程障碍对象Barrier原理详解
2019/12/02 Python
双向RNN:bidirectional_dynamic_rnn()函数的使用详解
2020/01/20 Python
HTML5自定义属性前缀data-及dataset的使用方法(html5 新特性)
2017/08/24 HTML / CSS
天网面试题
2013/04/07 面试题
领导班子个人查摆问题对照检查材料
2014/10/02 职场文书
党支部承诺书
2015/01/20 职场文书
2015年“公民道德宣传日”活动方案
2015/05/06 职场文书
升学宴家长致辞
2015/07/27 职场文书
上级领导检查欢迎词
2015/09/30 职场文书
创业分两种人:那么哪些适合创业?,哪些适合不适合创业呢?
2019/08/23 职场文书
Java org.w3c.dom.Document 类方法引用报错
2021/08/07 Java/Android
十大最强水系宝可梦,最美宝可梦排第三,榜首大家最熟悉
2022/03/18 日漫