array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.idn-to-utf8.php', 1 => 'idn_to_utf8', ), 'up' => array ( 0 => 'ref.intl.idn.php', 1 => 'Функции IDN', ), 'prev' => array ( 0 => 'function.idn-to-ascii.php', 1 => 'idn_to_ascii', ), 'next' => array ( 0 => 'class.intlchar.php', 1 => 'IntlChar', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/intl/idn/idn-to-utf8.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.2, PECL idn >= 0.1)
idn_to_utf8 — Преобразование доменного имени из IDNA ASCII в Unicode
Процедурный стиль
$domain
,$flags
= IDNA_DEFAULT
,$variant
= INTL_IDNA_VARIANT_UTS46
,&$idna_info
= null
Эта функция преобразовывает доменные имена из формата IDNA ASCII в Unicode, в кодировке UTF-8.
domain
Доменное имя в формате IDNA ASCII.
flags
Опции преобразования - комбинация констант IDNA_* (кроме констант IDNA_ERROR_*).
variant
INTL_IDNA_VARIANT_2003
(объявлена устаревшей начиная с PHP 7.2.0) для IDNA 2003 или
INTL_IDNA_VARIANT_UTS46
(доступна только с ICU 4.6) для UTS #46.
idna_info
Этот параметр используется только если используется
INTL_IDNA_VARIANT_UTS46
в
variant
. В этом случае он будет заполнен
массивом с ключами 'result'
, возможными ошибочными
результатами преобразования, 'isTransitionalDifferent'
,
логическое выражение означает изменило или могло бы изменить результат
при использовании сквозного механизма UTS #46, и 'errors'
,
содержащими целочисленное представление битовой маски из констант
IDNA_ERROR_*.
Возвращает доменное имя, перекодированное из кодировки Unicode в кодировку UTF-8, или false
, если возникла ошибка.
Версия | Описание |
---|---|
7.4.0 |
Теперь значение по умолчанию variant изменено на
INTL_IDNA_VARIANT_UTS46 вместо устаревшей константы
INTL_IDNA_VARIANT_2003 .
|
7.2.0 |
INTL_IDNA_VARIANT_2003 объявлена устаревшей, вместо неё
используйте INTL_IDNA_VARIANT_UTS46 .
|
Пример #1 Пример использования idn_to_utf8()
<?php
echo idn_to_utf8('xn--tst-qla.de');
?>
Результат выполнения приведённого примера:
täst.de