idn_to_utf8

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

idn_to_utf8Convierte el nombre de dominio IDNA ASCII a Unicode

Descripción

Estilo por procedimientos

idn_to_utf8(
    string $domain,
    int $flags = IDNA_DEFAULT,
    int $variant = INTL_IDNA_VARIANT_UTS46,
    array &$idna_info = null
): string|false

Esta función convierte el nombre de dominio en formato IDNA ASCII-compatible a Unicode, codificado en UTF-8.

Parámetros

domain

Dominio a convertir desde el formato IDNA ASCII-compatible.

flags

Opciones de conversión - una combinación de las constantes IDNA_* (excepto las constantes IDNA_ERROR_*).

variant

Puede ser INTL_IDNA_VARIANT_2003 (obsoleto a partir de PHP 7.2.0) para IDNA 2003, o INTL_IDNA_VARIANT_UTS46 (solo disponible a partir de ICU 4.6) para UTS #46.

idna_info

Este parámetro solo puede ser utilizado si la constante INTL_IDNA_VARIANT_UTS46 ha sido utilizada como parámetro para variant. En este caso, este parámetro será rellenado por un array donde la clave 'result' contendrá el resultado de la transformación, la clave 'isTransitionalDifferent' contendrá un booleano indicando si el uso del mecanismo transicional UTS #46 ha alterado o no el resultado, y la clave 'errors' contendrá un int representando un juego de bits de constantes IDNA_ERROR_*.

Valores devueltos

Nombre de dominio en Unicode, codificado UTF-8. o false en caso de error

Historial de cambios

Versión Descripción
7.4.0 El valor por defecto del parámetro variant es ahora INTL_IDNA_VARIANT_UTS46 en lugar de la constante INTL_IDNA_VARIANT_2003 deprecada.
7.2.0 INTL_IDNA_VARIANT_2003 ha sido deprecado; utilizar INTL_IDNA_VARIANT_UTS46 en su lugar.

Ejemplos

Ejemplo #1 Ejemplo con idn_to_utf8()

<?php

echo idn_to_utf8('xn--tst-qla.de');

?>

El resultado del ejemplo sería:

täst.de

Ver también

  • idn_to_ascii() - Convierte un nombre de dominio al formato IDNA ASCII