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抽象工厂模式(Elgg)
Mar 21 PHP
php 连接mysql连接被重置的解决方法
Feb 15 PHP
php数据库抽象层 PDO
May 07 PHP
基于PHP magic_quotes_gpc的使用方法详解
Jun 24 PHP
mac环境中使用brew安装php5.5.15
Aug 18 PHP
PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享
Sep 27 PHP
PHP导入导出Excel代码
Jul 07 PHP
php HTML无刷新提交表单
Apr 05 PHP
nginx下安装php7+php5
Jul 31 PHP
php使用变量动态创建类的对象用法示例
Feb 06 PHP
PHP 计算两个特别大的整数实例代码
May 07 PHP
在Ubuntu 18.04上安装PHP 7.3 7.2和7.0的方法
Apr 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
屏蔽机器人从你的网站搜取email地址的php代码
2012/11/14 PHP
Zend Framework实现留言本分页功能(附demo源码下载)
2016/03/22 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
2016/10/18 PHP
让网页跳转到指定位置的jquery代码非书签
2013/09/06 Javascript
jquery使用on绑定a标签无效 只能用live解决
2016/06/02 Javascript
基于JS实现导航条之调用网页助手小精灵的方法
2016/06/17 Javascript
Bootstrap被封装的弹层
2016/07/20 Javascript
Bootstrap Validator 表单验证
2016/07/25 Javascript
js轮播图的插件化封装详解
2017/07/17 Javascript
vue.js实现标签页切换效果
2018/06/07 Javascript
Node.js如何对SQLite的async/await封装详解
2019/02/14 Javascript
微信公众平台获取access_token的方法步骤
2019/03/29 Javascript
vue项目中使用AES实现密码加密解密(ECB和CBC两种模式)
2019/08/12 Javascript
微信小程序关键字变色实现代码实例
2019/12/13 Javascript
浅谈vue.watch的触发条件是什么
2020/11/07 Javascript
[48:56]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 VG vs KG
2018/03/31 DOTA
python self,cls,decorator的理解
2009/07/13 Python
python清除字符串里非字母字符的方法
2015/07/02 Python
python2与python3共存问题的解决方法
2018/09/18 Python
对python中大文件的导入与导出方法详解
2018/12/28 Python
selenium+PhantomJS爬取豆瓣读书
2019/08/26 Python
python语言是免费还是收费的?
2020/06/15 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
用HTML5制作数字时钟的教程
2015/05/11 HTML / CSS
一套Delphi的笔试题二
2013/05/11 面试题
成人高等教育毕业生自我鉴定
2013/10/22 职场文书
学校安全责任书
2014/04/14 职场文书
软件售后服务承诺书
2014/05/21 职场文书
大学生感恩父母演讲稿
2014/08/28 职场文书
车间统计员岗位职责
2015/04/14 职场文书
工作一年自我鉴定
2019/06/20 职场文书
如何使用Python对NetCDF数据做空间相关分析
2021/04/21 Python
Navicat连接MySQL错误描述分析
2021/06/02 MySQL
nginx location 带斜杠【 / 】与不带的区别
2022/04/13 Servers
MySQL 执行数据库更新update操作的时候数据库卡死了
2022/05/02 MySQL
SQL bool盲注和时间盲注详解
2022/07/23 SQL Server