PHPKonf 2020 Online

定義済み定数

INTL_ICU_VERSION (string)
ICUライブラリのバージョン。10進の数字をドットで区切った文字列です。
INTL_MAX_LOCALE_LEN (int)
ロケール名の長さの制限。PHP コード内では 80 文字までに制限されており、 それより長いロケール名は使用できません。
IDNA_DEFAULT (int)
IDN 関数の入力で、アサインされていないコードポイントの処理を拒否し、 入力がドメイン名 ASCII 規則を満たすかどうかをチェックしません。
IDNA_ALLOW_UNASSIGNED (int)
IDN 関数の入力で、アサインされていないコードポイントの処理を許可します。
IDNA_USE_STD3_RULES (int)
IDN 関数の入力がドメイン名 ASCII 規則を満たすかどうかをチェックします。
IDNA_CHECK_BIDI (int)
入力が BiDi の規則を満たすかどうかをチェックします。 IDNA2003 の実装ではこの設定は無視され、常にこのチェックを行います。
IDNA_CHECK_CONTEXTJ (int)
入力が CONTEXTJ の規則を満たすかどうかをチェックします。 IDNA2003 の実装ではこの設定は無視されます。このチェックは IDNA2008 から追加されたものだからです。
IDNA_NONTRANSITIONAL_TO_ASCII (int)
idn_to_ascii() で非移行的処理をするためのオプション。 デフォルトでは移行的処理となります。このオプションは IDNA2003 の実装では無視されます。
IDNA_NONTRANSITIONAL_TO_UNICODE (int)
idn_to_utf8() で非移行的処理をするためのオプション。 デフォルトでは移行的処理となります。このオプションは IDNA2003 の実装では無視されます。
INTL_IDNA_VARIANT_2003 (int)
IDNA 2003 のアルゴリズムを idn_to_utf8()idn_to_ascii() で使います。これはデフォルトの設定です。 この定数およびデフォルトの使用は、PHP 7.2.0 以降は非推奨です。
INTL_IDNA_VARIANT_UTS46 (int)
UTS #46 アルゴリズムを idn_to_utf8()idn_to_ascii() で使います。 ICU 4.6 以降で利用可能です。
IDNA_ERROR_EMPTY_LABEL (int)
IDNA_ERROR_LABEL_TOO_LONG (int)
IDNA_ERROR_DOMAIN_NAME_TOO_LONG (int)
IDNA_ERROR_LEADING_HYPHEN (int)
IDNA_ERROR_TRAILING_HYPHEN (int)
IDNA_ERROR_HYPHEN_3_4 (int)
IDNA_ERROR_LEADING_COMBINING_MARK (int)
IDNA_ERROR_DISALLOWED (int)
IDNA_ERROR_PUNYCODE (int)
IDNA_ERROR_LABEL_HAS_DOT (int)
IDNA_ERROR_INVALID_ACE_LABEL (int)
IDNA_ERROR_BIDI (int)
IDNA_ERROR_CONTEXTJ (int)
UTS #46 アルゴリズムを idn_to_utf8()idn_to_ascii() で使うときに、 これらのエラーがビットセットで報告されます。

add a note add a note

User Contributed Notes 1 note

up
1
PHP Guru
1 month ago
idn_to_ascii('faß.de');

will return fass.de
(Due to Germans using the ß symbol as a contraction of ss)

idn_to_ascii('faß.de', IDNA_NONTRANSITIONAL_TO_ASCII);

will return xn--fa-hia.de
(This is the correct behavior too allow faß.de and fass.de to be registered as different domain names.)

idn_to_utf8('xn--fa-hia.de');

will return fass.de

idn_to_utf8('xn--fa-hia.de', IDNA_NONTRANSITIONAL_TO_UNICODE);

will return faß.de
(Again this is the correct behavior.)
To Top