array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'function.iconv.php', 1 => 'iconv', ), 'up' => array ( 0 => 'ref.iconv.php', 1 => 'iconv 関数', ), 'prev' => array ( 0 => 'function.iconv-substr.php', 1 => 'iconv_substr', ), 'next' => array ( 0 => 'function.ob-iconv-handler.php', 1 => 'ob_iconv_handler', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ja', 'path' => 'reference/iconv/functions/iconv.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)
iconv — ある文字エンコーディングの文字列を、別の文字エンコーディングに変換する
文字列 string
の文字セットを from_encoding
から to_encoding
に変換します。
from_encoding
string
の解釈に使われる文字セット。
to_encoding
変換したいエンコーディング。
文字列 //TRANSLIT
を to_encoding
に追加すると、翻字機能が有効になります。これは、指定された文字集合で
表せない文字を、見た目の似ている別の文字に置き換える機能です。
文字列 //IGNORE
を追加すると、指定された文字集合で
表せない文字は黙って切り捨てられます。
それ以外の場合は E_NOTICE
が発生し、この関数は false
を返します。
//TRANSLIT
が機能したとしたら、
どう動くかはシステムの iconv() の実装
(ICONV_IMPL
を参照) に依存します。
実装によっては、//TRANSLIT
を無視することが知られています。
よって、to_encoding
において無効な文字に対しては、
変換処理は失敗するかもしれません。
string
変換する文字列。
変換された文字列を返します。
失敗した場合に false
を返します。
例1 iconv() の例
<?php
$text = "This is the Euro symbol '?'.";
echo 'Original : ', $text, PHP_EOL;
echo 'TRANSLIT : ', iconv("UTF-8", "ISO-8859-1//TRANSLIT", $text), PHP_EOL;
echo 'IGNORE : ', iconv("UTF-8", "ISO-8859-1//IGNORE", $text), PHP_EOL;
echo 'Plain : ', iconv("UTF-8", "ISO-8859-1", $text), PHP_EOL;
?>
上の例の出力は、 たとえば以下のようになります。
Original : This is the Euro symbol '?'. TRANSLIT : This is the Euro symbol 'EUR'. IGNORE : This is the Euro symbol ''. Plain : Notice: iconv(): Detected an illegal character in input string in .\iconv-example.php on line 7
注意:
文字エンコーディングと、指定できるオプションは、 インストールされている iconv の実装に依存します。
from_encoding
やto_encoding
が現在のシステムでサポートされていない場合は、false
を返します。