(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.
stringThe string or array to be converted.
to_encodingThe 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.
The encoded string or array on success, or false on failure.
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.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
/* Convert internal character encoding to SJIS */
$str = mb_convert_encoding($str, "SJIS");
/* Convert EUC-JP to UTF-7 */
$str = mb_convert_encoding($str, "UTF-7", "EUC-JP");
/* Auto detect encoding from JIS, eucjp-win, sjis-win, then convert str to UCS-2LE */
$str = mb_convert_encoding($str, "UCS-2LE", "JIS, eucjp-win, sjis-win");
/* If mbstring.language is "Japanese", "auto" is expanded to "ASCII,JIS,UTF-8,EUC-JP,SJIS" */
$str = mb_convert_encoding($str, "EUC-JP", "auto");
?>