Converta emoticons de teclado em png personalizados e vice-versa

Agora, essa é uma pergunta direta e simples.

Como posso conseguir essas duas coisas.

PRIMEIRO

Entrada - ei, eu estou sorrindo

Resultado -hey I'm smiling <span class ="smile"></span>

E vice versa.

SEGUNDO

Entrada - ei, eu estou sorrindo: smile:

Saída - ei, eu estou sorrindo

Agora eu sei a parte de extração de palavras. Eu simplesmente não sei emque forma os emoticons de teclado são?

Pela primeira vez.

Eu sei que isso pode ser alcançado verificando cada palavra e usando a caixa de seleção para verificar. Mas o que se passa dentro docase&nbsp;afirmações?

Por segundo

Este tem o mesmo problema que posso usar:smile:&nbsp;no caso de interruptor. Mas o que devo substituir o:smile:&nbsp;com para obter o emoticon do teclado?

Eu sei que isso tem a ver com alguns caracteres unicode, mas desde que eu não tinha certeza, vim aqui na esperança de uma solução.

P. S - Estou usando php no lado do servidor.