Migrando um aplicativo php para manipular UTF-8

Eu estou trabalhando em um aplicativo multi-linguagem em php.

Tudo estava bem até recentemente me pediram para apoiar caracteres chineses. As ações que tomei para suportar caracteres UTF-8 são as seguintes:

Todas as tabelas DB agora são UTF-8

Modelos HTML contêm a tag<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Os controladores enviam um cabeçalho especificando a codificação (utf-8) a ser usada para a resposta http

Tudo foi bom até eu começar a fazer algumas manipulações de string (substr e os gostos)

Com chinês não funcionará porque o chinês é representado como multibytes e, portanto, se você fizer uma substring normal (substr), ele irá cortar uma "letra" no meio de um dos bytes alocados e f * ck o resultado em tela.

Eu corrigi todos os meus problemas, adicionando isso no bootstrap

mb_internal_encoding("UTF-8");

e substituindo todo ostrlen, substr, strstr com o seumb_ homólogos.

Que outras coisas eu preciso fazer para suportar o UTF-8 totalmente em php?

questionAnswers(1)

yourAnswerToTheQuestion