PHPCon Poland 2024

Constantes pré-définies

INTL_ICU_DATA_VERSION (string)
Version des données dans ICU4C.
INTL_ICU_VERSION (string)
La version courante de la bibliothèque ICU en tant qu'une chaîne décimale séparer avec des points.
INTL_MAX_LOCALE_LEN (int)
Limite la taille locale, par défaut à 80 en PHP. Les noms de locales plus grand que cette taille seront interdits.
IDNA_DEFAULT (int)
Interdire le traitement des codepoints non affectés dans l'entrée pour les fonctions IDN et ne vérifient pas si l'entrée est conforme aux règles de noms de domaine ASCII.
IDNA_ALLOW_UNASSIGNED (int)
Autoriser le traitement des codepoints non affectés dans l'entrée pour les fonctions IDN.
IDNA_USE_STD3_RULES (int)
Vérifiez si l'entrée pour les fonctions IDN est conforme aux règles de noms de domaine ASCII.
IDNA_CHECK_BIDI (int)
Vérifie si l'entrée est conforme aux règles BiDi. Ignoré par l'implémentation IDNA2003, qui effectue toujours cette vérification.
IDNA_CHECK_CONTEXTJ (int)
Vérifie si l'entrée est conforme aux règles CONTEXTJ. Ignoré par l'implémentation IDNA2003, vu que cette vérification est nouvelle en IDNA2008.
IDNA_NONTRANSITIONAL_TO_ASCII (int)
Option pour une exécution non-transitionnelle dans la fonction idn_to_ascii(). L'exécution transitionnelle est activée par défaut. Cette option est ignorée par l'implémentation IDNA2003.
IDNA_NONTRANSITIONAL_TO_UNICODE (int)
Option pour une exécution non-transitionnelle dans la fonction idn_to_utf8(). L'exécution transitionnelle est activée par défaut. Cette option est ignorée par l'implémentation IDNA2003.
INTL_IDNA_VARIANT_2003 (int)
Utilise l'algorithme IDNA 2003 dans la fonction idn_to_utf8() ainsi que dans la fonction idn_to_ascii(). C'est le comportement par défaut. Cette constante et l'usage par défaut ont été dépréciés à partir de la version PHP 7.2.0.
INTL_IDNA_VARIANT_UTS46 (int)
Utilise l'algorithme UTS #46 dans la fonction idn_to_utf8() ainsi que dans la fonction idn_to_ascii(). Disponible à partir de ICU 4.6.

Les erreurs suivantes font partie d'un masque de bits retourné par l'algorithme UTS #46 dans les fonctions idn_to_utf8() et idn_to_ascii().

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)
ULOC_ACTUAL_LOCALE (int)
La locale d'où proviennent réellement les données.
ULOC_VALID_LOCALE (int)
La locale la plus spécifique prise en charge par ICU.
U_AMBIGUOUS_ALIAS_WARNING (int)
Cet alias de convertisseur peut aller à différentes implémentations de convertisseur.
U_BAD_VARIABLE_DEFINITION (int)
Manque de '$' ou nom de variable en double.
U_BRK_ASSIGN_ERROR (int)
Erreur de syntaxe dans l'instruction d'affectation de la règle RBBI.
U_BRK_ERROR_LIMIT (int)
Cela doit toujours être la dernière valeur pour indiquer la limite des échecs de l'itérateur de coupures.
U_BRK_ERROR_START (int)
Début des codes indiquant les échecs de l'itérateur de coupures.
U_BRK_HEX_DIGITS_EXPECTED (int)
Des chiffres hexadécimaux sont attendus comme partie d'un caractère échappé dans une règle.
U_BRK_INIT_ERROR (int)
Échec de l'initialisation. Données ICU probablement manquantes.
U_BRK_INTERNAL_ERROR (int)
Une erreur interne (bogue) a été détectée.
U_BRK_MALFORMED_RULE_TAG (int)
Le tag {nnn} sur une règle est mal formé.
U_BRK_MISMATCHED_PAREN (int)
Parenthèses non appariées dans une règle RBBI.
U_BRK_NEW_LINE_IN_QUOTED_STRING (int)
Guillemet fermant manquant dans une règle RBBI.
U_BRK_RULE_EMPTY_SET (int)
La règle contient un ensemble Unicode vide.
U_BRK_RULE_SYNTAX (int)
Erreur de syntaxe dans la règle RBBI.
U_BRK_SEMICOLON_EXPECTED (int)
Point-virgule ';' manquant à la fin d'une règle RBBI.
U_BRK_UNCLOSED_SET (int)
Ensemble Unicode dans une règle RBBI manquant un ']' de fermeture.
U_BRK_UNDEFINED_VARIABLE (int)
Utilisation d'une $Variable non définie dans une règle RBBI.
U_BRK_UNRECOGNIZED_OPTION (int)
Option dans les règles RBBI non reconnue.
U_BRK_VARIABLE_REDFINITION (int)
Variable de règle RBBI redéfinie.
U_BUFFER_OVERFLOW_ERROR (int)
Un résultat ne rentrerait pas dans le tampon fourni.
U_CE_NOT_FOUND_ERROR (int)
Actuellement utilisé uniquement lors du réglage du sommet variable, mais peut être utilisé généralement.
U_COLLATOR_VERSION_MISMATCH (int)
La version du collateur n'est pas compatible avec la version de base.
U_DIFFERENT_UCA_VERSION (int)
ucol_open a rencontré une incompatibilité entre la version UCA et la version de l'image du collateur, donc le collateur a été construit à partir de règles. Pas d'impact sur la fonction ultérieure.
U_ENUM_OUT_OF_SYNC_ERROR (int)
UEnumeration hors de synchronisation avec la collection sous-jacente.
U_MISPLACED_COMPOUND_FILTER (int)
Un filtre composé est dans un emplacement invalide.
U_MISPLACED_CURSOR_OFFSET (int)
Un décalage du curseur se produit à une position illégale.
U_MISPLACED_QUANTIFIER (int)
Un quantificateur apparaît après un délimiteur de fin de segment.
U_MISSING_OPERATOR (int)
Une règle ne contient aucun opérateur.
U_MISSING_RESOURCE_ERROR (int)
La ressource demandée est introuvable.
U_MISSING_SEGMENT_CLOSE (int)
Non utilisé depuis ICU 2.4.
U_MULTIPLE_ANTE_CONTEXTS (int)
Plus d'un contexte antérieur.
U_MULTIPLE_COMPOUND_FILTERS (int)
Plus d'un filtre composé.
U_MULTIPLE_CURSORS (int)
Plus d'un curseur.
U_MULTIPLE_DECIMAL_SEPARATORS (int)
Plus d'un séparateur décimal dans le modèle numérique.
U_MULTIPLE_DECIMAL_SEPERATORS (int)
Alias de U_MULTIPLE_DECIMAL_SEPARATORS.
U_MULTIPLE_EXPONENTIAL_SYMBOLS (int)
Plus d'un symbole d'exposant dans le modèle numérique.
U_MULTIPLE_PAD_SPECIFIERS (int)
Plus d'un symbole de remplissage dans le modèle numérique.
U_MULTIPLE_PERCENT_SYMBOLS (int)
Plus d'un symbole de pourcentage dans le modèle numérique.
U_MULTIPLE_PERMILL_SYMBOLS (int)
Plus d'un symbole de pour mille dans le modèle numérique.
U_MULTIPLE_POST_CONTEXTS (int)
Plus d'un contexte postérieur.
U_NO_SPACE_AVAILABLE (int)
Pas d'espace disponible pour l'expansion en mémoire tampon pour la mise en forme arabe.
U_NO_WRITE_PERMISSION (int)
Tentative de modification de données en lecture seule ou de données constantes.
U_PARSE_ERROR (int)
Équivalent à Java ParseException.
U_PARSE_ERROR_LIMIT (int)
La limite pour les erreurs du Transliterator.
U_PARSE_ERROR_START (int)
Début des erreurs du Transliterator.
U_PATTERN_SYNTAX_ERROR (int)
Erreur de syntaxe dans le modèle de format.
U_PRIMARY_TOO_LONG_ERROR (int)
L'utilisateur a essayé de définir une variable supérieure à une valeur primaire de plus de deux octets.
U_REGEX_BAD_ESCAPE_SEQUENCE (int)
Séquence d'échappement non reconnue dans le modèle.
U_REGEX_BAD_INTERVAL (int)
Erreur dans l'intervalle {min,max}.

add a note

User Contributed Notes 2 notes

up
6
PHP Guru
3 years 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.)
up
1
rg at mejoramos dot com
1 year ago
to date (MARCH 2023), the version Spanish not give info about the constant `INTL_ICU_VERSION`, take a look to English version, with details about the important constant `INTL_ICU_VERSION`
To Top