# idn_to_ascii

(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.2, PECL idn >= 0.1)

idn_to_ascii — Convert domain name to IDNA ASCII form

### 说明

过程化风格

idn_to_ascii ( string `$domain` [, int `$options` = IDNA_DEFAULT [, int `$variant` = INTL_IDNA_VARIANT_UTS46 [, array `&$idna_info` ]]] ) : string

This function converts a Unicode domain name to an IDNA ASCII-compatible format.

### 参数

`domain`

  The domain to convert, which must be UTF-8 encoded.

`options`

  Conversion options - combination of IDNA_* constants (except IDNA_ERROR_* constants).

`variant`

  Either `INTL_IDNA_VARIANT_2003` for IDNA 2003 or `INTL_IDNA_VARIANT_UTS46` for UTS #46.

`idna_info`

  This parameter can be used only if `INTL_IDNA_VARIANT_UTS46` was used for `variant`. In that case, it will be filled with an array with the keys 'result', the possibly illegal result of the transformation, 'isTransitionalDifferent', a boolean indicating whether the usage of the transitional mechanisms of UTS #46 either has or would have changed the result and 'errors', which is an int representing a bitset of the error constants IDNA_ERROR_*.

### 返回值

The domain name encoded in ASCII-compatible form, 或者在失败时返回 `FALSE`

### 更新日志

版本 | 说明
--- | ---
7.4.0 | The default value of `variant` is now `INTL_IDNA_VARIANT_UTS46` instead of the deprecated `INTL_IDNA_VARIANT_2003`.
7.2.0 | `INTL_IDNA_VARIANT_2003` has been deprecated; use `INTL_IDNA_VARIANT_UTS46` instead.
5.4.0/PECL 2.0.0b1 | Added the parameters `variant` and `idna_info`; UTS #46 support (requires ICU ≥ 4.6).

### 范例

Example #1 idn_to_ascii() example

    <?php

    echo idn_to_ascii('täst.de');

    ?>

以上例程会输出：

    xn--tst-qla.de

### 参见

- idn_to_utf8() - Convert domain name from IDNA ASCII to Unicode