2010-12-21 2 views
2

mirc color codes을 PHP를 통해 html로 변환하고 싶습니다. http://searchirc.com/search.php?F=exact&T=chan&N=6246&I=anime-piratesPHP에서 mIRC 색상 구문 분석

감사

+0

내가 연결된 예에 이해 아무것도 표시되지 않습니다 다음은 예입니다. 색상 코드의 작동 방식을 설명해 주시겠습니까? –

+0

http://www.mirc.com/help/colors.html보세요. 기본적으로 "Ctrl + K"조합 후에 각 색상에 숫자를 입력합니다. 숫자 사이에 쉼표를 사용하면 우리는 배경을 얻습니다. – wonnie

+0

구문 분석 하시겠습니까? 데이터가 어떤 형태로 들어올 것입니까? 입력 소스/메소드 란 무엇입니까? PHP는 어떻게 설정해야합니까? 미리 설정된 HTML 클래스를 사용하거나 배경색 만 설정 하시겠습니까? – ssube

답변

5

사용 preg_replace_callback :

function mycallback($matches) { 
    $bindings = array(
     0=>'white', 
     1=>'black', 
     2=>'blue', 
     3=>'green', 
     4=>'red', 
     5=>'brown', 
     6=>'purple', 
    ); 

    $fg = isset($bindings[$matches[1]]) ? $bindings[$matches[1]] : 'transparent'; 
    $bg = isset($bindings[$matches[2]]) ? $bindings[$matches[2]] : 'transparent'; 

    return '<span style="color: '.$fg.'; background: '.$bg.';">'.$matches[3].'</span>'; 
} 

$str = '^C3,1Hello^C foo ^C6,2World^C'; 
$str = preg_replace_callback('/\^C([0-9]{1,2}),?([0-9]{1,2})(.*?)\^C/', 'mycallback', $str); 

echo $str;