mb_convert_variables

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

mb_convert_variables変数の文字コードを変換する

説明

mb_convert_variables(
    string $to_encoding,
    array|string $from_encoding,
    mixed &$var,
    mixed &...$vars
): string|false

エンコーディング from_encoding の変数 varvars をエンコーディング to_encoding に変換します。

mb_convert_variables() は、エンコーディング検出のために Array または Object の文字列を結合します。これは、 エンコーディング検出は短い文字列では失敗する傾向があるためです。このため、 1 つの配列またはオブジェクトで異なるエンコーディングを混ぜることはできません。

パラメータ

to_encoding

文字列の変換後のエンコーディング。

from_encoding

from_encoding には配列またはカンマ区切りの文字列を指定し、 from-coding からエンコーディングの検出を試みます。 from_encoding が省略された場合、detect_order を使用します。

var

var(3番目以降の引数)は、変換する変数への リファレンスです。文字列、配列、オブジェクトを指定することが可能です。 mb_convert_variables() は全てのパラメータが 同じエンコーディングを有することを仮定します。

vars

追加の変数。

戻り値

成功時に変換前の文字エンコーディングを返し、失敗した場合に false を返します。

例1 mb_convert_variables() の例

<?php
/* 変数 $post1, $post2 を内部エンコーディングに変換する */
$interenc = mb_internal_encoding();
$inputenc = mb_convert_variables($interenc, "ASCII,UTF-8,SJIS-win", $post1, $post2);
?>

add a note add a note

User Contributed Notes 2 notes

up
2
ryosuke_i_628 at yahoo dot co dot jp
10 years ago
This function has a bug on recursion detection.
https://bugs.php.net/bug.php?id=66964
up
0
ivan dot plotnikov at corp dot oft-e dot com
8 years ago
Last version of this function (php 5.6.27 and php7.0.12) have a bug
https://bugs.php.net/bug.php?id=73407
To Top