Разбор mIRC цветов в php - PullRequest
       33

Разбор mIRC цветов в php

2 голосов
/ 21 декабря 2010

Я хочу преобразовать mirc цветовые коды в html через php.Вот пример: http://searchirc.com/search.php?F=exact&T=chan&N=6246&I=anime-pirates

Спасибо

1 Ответ

5 голосов
/ 21 декабря 2010

Использование 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;
...