Como eu converto citações inteligentes do Word e em traços em uma string?

Eu tenho um formulário com uma textarea. Os usuários inserem um bloco de texto armazenado em um banco de dados.

Ocasionalmente, um usuário colará texto do Word que contenha citações ou emoldações inteligentes. Esses caracteres aparecem no banco de dados como: â € œ, ', â € œ

Qual função devo chamar na string de entrada paraconverta citações inteligentes em citações e traços regulares para traços regulares?

Eu estou trabalhando em PHP.

Atualização: Obrigado por todas as excelentes respostas até agora. A página no site de Joel sobre codificações é muito informativa:http://www.joelonsoftware.com/articles/Unicode.html

Algumas notas no meu ambiente:

O banco de dados MySQL está usando a codificação UTF-8. Da mesma forma, as páginas HTML que exibem o conteúdo estão usando o UTF-8 (Update :) definindo explicitamente o tipo de conteúdo meta.

Nessas páginas, as citações inteligentes e os traços aparecem como um diamante com ponto de interrogação.

Solução:

Mais uma vez obrigado pelas respostas. A solução foi dupla:

Certifique-se de que o banco de dados e os arquivos HTML foram configurados explicitamente para usar a codificação UTF-8.Usarhtmlspecialchars() ao invés dehtmlentities().

questionAnswers(13)

yourAnswerToTheQuestion