2011-12-19 3 views
3

프로젝트에서 수많은 색상 코드를 사용하고 있습니다. 요점은 그것들이 아름답고, 단지 다름이 아니기 위해서입니다. (나는 또한 새로 고침 (동일한 색상 생성기 없음)에 동일한 필드에 대해 동일한 색상 코드를 지속적으로 가질 수 있기를 바랍니다) 나는 들판을 16 진수 색으로 바꿔라. 미리 정의 된 기능이 있습니까?문자열을 16 진수로 변환 코드

Exemple :이 값이 숫자 만있는 것이 중요합니다 :

$string = "Blablabla"; 
$colorCode = toColorCode($string); 

function toColorCode($initial){ 
    /*MAGIC MADNESS*/ 
    return array("R"=>XXX,"G"=>XXX,"B"=>XXX); 
} 

가 언급하는 것을 잊었다.

+0

이보기의 UI 디자인 관점에서 좋은 생각이다 :

easies 방법은 예를 MD5를 들어, 문자열에서 체크섬 함수를 호출하는 것입니다? 텍스트가 배경과 적절한 대조를 이루는 방법은 무엇입니까? 누구나 흰색 바탕에 노란색 텍스트를 볼 수 있을지 의심 스럽다 –

+0

두 가지 질문 : 1. toColorCode()에 대한 인수로 정확히 무엇을 기대합니까? 단어 '흰색'또는 16 진 코드 'FFFFFF'? 2. 실제 16 진수 코드 대신 값 배열을 반환해야하는 이유가 있습니까? –

+0

그래서 "FF5600"과 같은 문자열을 0xFF5600으로 변환 하시겠습니까? – Frank

답변

3

내가 이해할 수있는 한, 문자열에 대해 상당히 고유 한 색상 코드를 생성하려고합니다. 보조 노트에

function toColorCode($initial){ 
    $checksum = md5($initial); 
    return array(
    "R" => hexdec(substr($checksum, 0, 2)), 
    "G" => hexdec(substr($checksum, 2, 2)), 
    "B" => hexdec(substr($checksum, 4, 2)) 
); 
} 
+0

MD5가 숫자 문자 만 반환하는 경우 좋을 것입니다. sry는 언급하는 것을 잊어 버렸습니다. –

+2

substr을 감싸십시오 :'hexdec (substr ($ checksum, 0, 2))' –

+0

감사합니다 justin, 그것에 대해 고생하지 않았습니다. 내 문제가 해결 됐어! –

관련 문제