跳转到主要内容

mb-convert-encoding

mb_convert_encoding

Convert a string from one character encoding to another

ENTITY

array

string

false

mb_convert_encoding

array

string

string

string

to_encoding

array

string

null

from_encoding

ENTITY

Converts string from from_encoding, or the current internal encoding, to to_encoding. If string is an ENTITY, all its ENTITY values will be converted recursively.

ENTITY

string
The ENTITY or ENTITY to be converted.

to_encoding
The desired encoding of the result.

from_encoding
The current encoding used to interpret string. Multiple encodings may be specified as an ENTITY 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 ENTITY, 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.

ENTITY

The encoded ENTITY or ENTITY on success, ENTITY.

ENTITY

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.

ENTITY

ENTITY ENTITY
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 ENTITY as string. Formerly, only ENTITYs have been supported.

ENTITY

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

    

ENTITY

mb_detect_order, UConverter::transcode, iconv