(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
mb_convert_encoding — Convert a string from one character encoding to another
$string
, string$to_encoding
, array|string|null$from_encoding
= null
): array|string|false Converts string
from from_encoding
, or the current internal encoding, to to_encoding
. If string
is an array, all its string values will be converted recursively.
string
to_encoding
The desired encoding of the result.
from_encoding
The current encoding used to interpret string
. Multiple encodings may be specified as an array or comma separated list, in which case the correct encoding will be guessed using the same algorithm as mb_detect_encoding().
If from_encoding
is omitted or null
, the mbstring.internal_encoding setting will be used if set, otherwise the default_charset setting.
See supported encodings for valid values of to_encoding
and from_encoding
.
As of PHP 8.0.0, a ValueError is thrown if the value of to_encoding
or from_encoding
is an invalid encoding. Prior to PHP 8.0.0, a E_WARNING
was emitted instead.
Version | Description |
---|---|
8.2.0 | mb_convert_encoding() will no longer return the following non text encodings: "Base64" , "QPrint" , "UUencode" , "HTML entities" , "7 bit" and "8 bit" . |
8.0.0 | mb_convert_encoding() will now throw a ValueError when to_encoding is passed an invalid encoding. |
8.0.0 | mb_convert_encoding() will now throw a ValueError when from_encoding is passed an invalid encoding. |
8.0.0 | from_encoding is nullable now. |
7.2.0 | This function now also accepts an array as string . Formerly, only strings have been supported. |
Example #1 mb_convert_encoding() example
<?php
$str = mb_convert_encoding($str, "SJIS");
$str = mb_convert_encoding($str, "UTF-7", "EUC-JP");
$str = mb_convert_encoding($str, "UCS-2LE", "JIS, eucjp-win, sjis-win");
$str = mb_convert_encoding($str, "EUC-JP", "auto");
?>