Показать сообщение отдельно

[PHP] hex -> int -> hex
  #1  
Старый 14.07.2009, 14:55
imajo.ati
Участник форума
Регистрация: 21.02.2008
Сообщений: 255
С нами: 9589849

Репутация: 177
По умолчанию [PHP] hex -> int -> hex

функция

PHP код:
function int_to_rgb$i )
{
    return 
sprintf('#%02X%02X%02X'$i&0xFF , ($i>>8)&0xFF , ($i>>16)&0xFF );

переводит идентификатор цвета в hex

как перевести обратно? к примеру #808000

вот написал функцию

PHP код:
function rgb_to_int$i // xxxxxx
{
    
$ret hexdec($i[0].$i[1]);
    
$tmp hexdec($i[2].$i[3]); if ( $tmp != $ret *= $tmp;
    
$tmp hexdec($i[4].$i[5]); if ( $tmp != $ret *= $tmp;
    return 
$ret;

но она неправильно переводит некоторые цвета: допустим красный цвет FF0000 переводит правильно, а цвет 800080 нет

не могу найти нигде
 
Ответить с цитированием