Pergunta

Esta questão já tem uma resposta aqui:

Eu quero conformar manipulação de strings do meu site para apoiar outras línguas por UTF-8. Parece que a melhor maneira de fazer isso é abandonar todas as funções de cadeia padrão.

Então, eu tenho duas opções, eu posso definir a opção mbstring.func_overload no php.ini ou eu posso ir para trás sobre meu código e apenas substituir todas as funções com mb_*. Eu diria que a segunda opção será mais fácil para as pessoas usando o meu código, pois não terá que mudar sua configuração Sever. (Se eles ainda podem!)

O que dizer quando PHP 6 sai? Se isso tem alguma descobrindo sobre a minha escolha, uma vez que irá suportar o processamento de vários bytes adequada.

Foi útil?

Solução

Eu acredito que o argumento contra mbstring.func_overload é que se você usar qualquer 3ª bibliotecas partido / código que seja, que o código pode estar contando com a funcionalidade "normal" das funções em questão - por exemplo, pode-se chamar substr () para truncar uma string contendo dados binários em um byte fronteira exata, ou usando strlen () para obter o comprimento em bytes, em vez de comprimento em caracteres UTF-8.

Veja também: Devo usar multi-byte sobrecarga (mbstring. func_overload)?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top