(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
mb_convert_encoding — Converte uma string de uma codificação de caracteres para outra
$string, string $to_encoding, array|string|null $from_encoding = null): array|string|false
Converte string de from_encoding,
ou a codificação interna atual, para to_encoding.
Se string for um array, todos os seus valores string serão
convertidos recursivamente.
stringto_encodingA codificação desejada para o resultado.
from_encoding
A codificação atual usada para interpretar string.
Múltiplas codificações podem ser especificadas como um array ou uma lista separada por vírgulas,
nesse caso, a codificação correta será detectada usando
o mesmo algoritmo que mb_detect_encoding().
Se from_encoding for omitida ou null, a
configuração mbstring.internal_encoding
será usada se definida, caso contrário, a configuração default_charset.
Consulte codificações suportadas
para os valores válidos de to_encoding
e from_encoding.
A partir do PHP 8.0.0, um ValueError é lançado se o
valor de to_encoding ou
from_encoding for uma codificação inválida.
Antes do PHP 8.0.0, um E_WARNING era emitido.
| Versão | Descrição |
|---|---|
| 8.2.0 |
mb_convert_encoding() não retornará mais
as seguintes codificações não textuais:
"Base64", "QPrint",
"UUencode", "HTML entities",
"7 bit" e "8 bit".
|
| 8.0.0 |
mb_convert_encoding() agora lançará um
ValueError quando
to_encoding receber uma codificação inválida.
|
| 8.0.0 |
mb_convert_encoding() agora lançará um
ValueError quando
from_encoding receber uma codificação inválida.
|
| 8.0.0 |
from_encoding agora é anulável.
|
| 7.2.0 |
Esta função agora aceita um array como string.
Anteriormente, apenas strings eram suportadas.
|
Exemplo #1 Exemplo de mb_convert_encoding()
<?php
/* Converte a codificação interna para SJIS */
$str = mb_convert_encoding($str, "SJIS");
/* Converte EUC-JP para UTF-7 */
$str = mb_convert_encoding($str, "UTF-7", "EUC-JP");
/* Detecta automaticamente a codificação a partir de JIS, eucjp-win, sjis-win, e converte str para UCS-2LE */
$str = mb_convert_encoding($str, "UCS-2LE", "JIS, eucjp-win, sjis-win");
/* Se mbstring.language for "Japanese", "auto" é expandido para "ASCII,JIS,UTF-8,EUC-JP,SJIS" */
$str = mb_convert_encoding($str, "EUC-JP", "auto");
?>