mb_convert_encoding

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_convert_encodingConverte uma string de uma codificação de caracteres para outra

Descrição

mb_convert_encoding(array|string $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.

Parâmetros

string

A string ou array a ser convertida.

to_encoding

A 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.

Valor Retornado

A string ou array codificada em caso de sucesso, ou false em caso de falha.

Erros/Exceções

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.

Registro de Alterações

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.

Exemplos

Example #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");
?>

Veja Também

  • mb_detect_order() - Define/Obtém a ordem de detecção de codificação de caracteres
  • UConverter::transcode() - Converte uma string de uma codificação de caracteres para outra
  • iconv() - Converte uma string de uma codificação de caracteres para outra