php-doc-en/reference/intl/idn/idn-to-ascii.xml
Máté Kocsis b548fc8e55 Generate intl methodsynopses based on stubs - Grapheme, IDN
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>

Closes GH-341.
2021-02-13 15:50:53 +01:00

164 lines
4.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.idn-to-ascii" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>idn_to_ascii</refname>
<refpurpose>Convert domain name to IDNA ASCII form</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>&style.procedural;</para>
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>idn_to_ascii</methodname>
<methodparam><type>string</type><parameter>domain</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer><constant>IDNA_DEFAULT</constant></initializer></methodparam>
<methodparam choice="opt"><type>int</type><parameter>variant</parameter><initializer><constant>INTL_IDNA_VARIANT_UTS46</constant></initializer></methodparam>
<methodparam choice="opt"><type>array</type><parameter role="reference">idna_info</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
This function converts a Unicode domain name to an IDNA ASCII-compatible format.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>domain</parameter></term>
<listitem>
<para>
The domain to convert, which must be UTF-8 encoded.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Conversion options - combination of IDNA_* constants
(except IDNA_ERROR_* constants).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>variant</parameter></term>
<listitem>
<para>
Either <constant>INTL_IDNA_VARIANT_2003</constant> (deprecated as of PHP 7.2.0) for IDNA 2003 or
<constant>INTL_IDNA_VARIANT_UTS46</constant> (only available as of ICU 4.6) for UTS #46.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>idna_info</parameter></term>
<listitem>
<para>
This parameter can be used only if
<constant>INTL_IDNA_VARIANT_UTS46</constant> was used for
<parameter>variant</parameter>. In that case, it will be filled with an
array with the keys <literal>'result'</literal>, the possibly illegal
result of the transformation,
<literal>'isTransitionalDifferent'</literal>, a boolean indicating
whether the usage of the transitional mechanisms of UTS #46 either has
or would have changed the result and <literal>'errors'</literal>,
which is an <type>int</type> representing a bitset of the error
constants IDNA_ERROR_*.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
The domain name encoded in ASCII-compatible form, &return.falseforfailure;
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>7.4.0</entry>
<entry>
The default value of <parameter>variant</parameter> is now
<constant>INTL_IDNA_VARIANT_UTS46</constant> instead of the deprecated
<constant>INTL_IDNA_VARIANT_2003</constant>.
</entry>
</row>
<row>
<entry>7.2.0</entry>
<entry>
<constant>INTL_IDNA_VARIANT_2003</constant> has been deprecated; use
<constant>INTL_IDNA_VARIANT_UTS46</constant> instead.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>idn_to_ascii</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
echo idn_to_ascii('täst.de');
?>
]]>
</programlisting>
</example>
&example.outputs;
<screen>
<![CDATA[
xn--tst-qla.de
]]>
</screen>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>idn_to_utf8</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->