есть таблица со смайлами. структура такая:
Код | INSERT INTO `jsmilies` (`id`, `image`, `text`) VALUES (1, 'smile.gif', ':)'), (2, 'sad.gif', ':('), (3, 'bo.gif', ':green:'), (5, 'angel.gif', ':ang:'), (6, 'blum.gif', ':-D'), (7, 'wink.gif', ';-D'), (8, 'dirol.gif', 'B-)'), (9, 'diablo.gif', ']:->'), (10, 'rolleyes.gif', ':-S'), (11, 'blush.gif', ':-/');
|
загоняю всё в ассоциативный массив
Код | foreach ($rows as $row) { $smiluies[$row->text] = '<img alt="' . $row->text . '" src="/images/smilies/' . $row->image . '" />'; }
|
парсю текст
Код | $text = strtr($text, $smiluies);
|
Всё отлично, но кроме смайла "дьявола" (ID=9). Смотрю по тексту, видимо экранируется в ключе знак "больше". Попробовал применить htmlspecialchars_decode(), что-то не особо помогло.
Как решить проблему? |