Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.
Nom | Défaut | Modifiable | Historique |
---|---|---|---|
mbstring.language | "neutral" | PHP_INI_ALL | |
mbstring.detect_order | NULL | PHP_INI_ALL | |
mbstring.http_input | "pass" | PHP_INI_ALL | Obsolète |
mbstring.http_output | "pass" | PHP_INI_ALL | Obsolète |
mbstring.internal_encoding | NULL | PHP_INI_ALL | Obsolète |
mbstring.substitute_character | NULL | PHP_INI_ALL | |
mbstring.func_overload | "0" | PHP_INI_SYSTEM | Obsolète à partir de PHP 7.2.0; supprimée à partir de PHP 8.0.0. |
mbstring.encoding_translation | "0" | PHP_INI_PERDIR | |
mbstring.http_output_conv_mimetypes | "^(text/|application/xhtml\+xml)" | PHP_INI_ALL | |
mbstring.strict_detection | "0" | PHP_INI_ALL | |
mbstring.regex_retry_limit | "1000000" | PHP_INI_ALL | Disponible à partir de PHP 7.4.0. |
mbstring.regex_stack_limit | "100000" | PHP_INI_ALL | Disponible à partir de PHP 7.3.5. |
Voici un éclaircissement sur l'utilisation des directives de configuration.
mbstring.language
string
Définit le langage utilisé
par mbstring. Notez que cette option définit
mbstring.internal_encoding
mbstring.internal_encoding
doit être placé après mbstring.language
dans le fichier php.ini
mbstring.encoding_translation
bool
Active la détection et la traduction des données d'entrées HTTP vers le codage interne mbstring.
mbstring.internal_encoding
string
Cette fonctionnalité obsolète sera certainement supprimée dans le futur.
Définit l'encodage interne par défaut.
Les utilisateurs devraient laisser cette option vide et définir plutôt l'option
default_charset
.
mbstring.http_input
string
Cette fonctionnalité obsolète sera certainement supprimée dans le futur.
Définit l'encodage de réception HTTP par défaut.
Les utilisateurs devraient laisser cette option vide et définir plutôt l'option
default_charset
.
mbstring.http_output
string
Cette fonctionnalité obsolète sera certainement supprimée dans le futur.
Définit l'encodage d'affichage HTTP par défaut (l'affichage sera converti depuis l'encodage interne vers l'encode HTTP de la sortie, lors de l'affichage).
Les utilisateurs devraient laisser vide cette option et définir plutôt l'option
default_charset
.
mbstring.detect_order
string
Définit l'ordre de détection des encodages par défaut. Voir aussi mb_detect_order().
mbstring.substitute_character
string
Définit l'encodage de substitution par défaut : il est utilisé pour les caractères invalides. Voir mb_substitute_character() pour les valeurs supportées.
mbstring.func_overload
string
Cette fonctionnalité est OBSOLÈTE à partir de PHP 7.2.0, et SUPPRIMÉE à partir de PHP 8.0.0. Dépendre de cette fonctionnalité est fortement déconseillé.
Remplace les fonctions de traitement des chaînes par les fonctions mbstring. Voir les fonctions de remplacement pour plus d'informations.
Ce paramètre ne peut être changé que depuis le fichier php.ini.
mbstring.http_output_conv_mimetypes
string
mbstring.strict_detection
bool
Active la détection stricte de l'encodage. Voir mb_detect_encoding() pour une description et des exemples.
mbstring.regex_retry_limit
int
Limite la quantité de retour en arrière qui peut être effectuée pendant une correspondance mbregex.
Ce paramètre ne prend effet que lors de la liaison avec oniguruma >= 6.8.0.
mbstring.regex_stack_limit
int
Limite la profondeur de la pile des expressions régulières mbstring.
En accord avec » HTML 4.01 specification, les navigateurs sont supposés utiliser le même jeu de caractères lorsqu'ils soumettent un formulaire. Mais, tous les navigateurs ne le font pas. Reportez-vous à la fonction mb_http_input() pour détecter les jeux de caractères utilisés par les navigateurs.
En général, les navigateurs sont suffisamment intelligents pour détecter
les jeux de caractères dans le HTML. Néanmoins, il convient de définir
le paramètre charset
de l'en-tête HTTP
Content-Type
à la valeur fournie par la fonction
header() ou par l'option de configuration
default_charset.
Exemple #1 Configuration de php.ini pour mbstring
; Langage par défaut mbstring.language = Neutral; (UTF-8) (par défaut) mbstring.language = English; Anglais mbstring.language = Japanese; Japonais ;; Jeu de caractère interne ;; Note : assurez-vous que ce jeu fonctionne avec PHP mbstring.internal_encoding = UTF-8 ;; Activation de la conversion automatique des entrées HTTP mbstring.encoding_translation = On ;; Jeu de caractères par défaut pour les données d'entrée HTTP ;; Note : le script ne peux pas changer cette configuration mbstring.http_input = pass ; Aucune conversion. mbstring.http_input = auto ; Utilise auto ; "auto" est remplacé suivant mbstring.language mbstring.http_input = SJIS ; Utilise SJIS mbstring.http_input = UTF-8,SJIS,EUC-JP ; Spécifie l'ordre ;;Jeu de caractères par défaut pour les données de sortie HTTP mbstring.http_output = pass ; Aucune conversion mbstring.http_output = UTF-8 ; Utilise UTF-8 ;; Ordre de détection des jeux de caractères mbstring.detect_order = auto ; Utilise la détection automatique mbstring.detect_order = ASCII,JIS,UTF-8,SJIS,EUC-JP ; Spécifie l'ordre ;; Déterminer le jeu de caractères de substitution par défaut mbstring.substitute_character = 12307 ; Spécifie une valeur Unicode mbstring.substitute_character = none ; Ne pas afficher de caractères mbstring.substitute_character = long ; Exemple complet : U+3000,JIS+7E7E
Exemple #2 Configuration de php.ini pour les utilisateurs de EUC-JP
;; Désactive la bufferisation de sortie output_buffering = Off ;; Choisit le jeu de caractères default_charset = EUC-JP ;; Le langage par défaut est le japonais mbstring.language = Japanese ;; Activation de la traduction automatique des données d'entrée HTTP mbstring.encoding_translation = On ;; Activation de la conversion automatique mbstring.http_input = auto ;; Convertit les sorties en EUC-JP mbstring.http_output = EUC-JP ;; Utilise le jeu de caractères interne EUC-JP mbstring.internal_encoding = EUC-JP ;; Ne pas afficher les caractères invalides mbstring.substitute_character = none
Exemple #3 Configuration de php.ini pour les utilisateurs de SJIS
;; Active la bufferisation de sortie output_buffering = On ;; Utilise le gestionnaire mb_output_handler pour la conversion de sortie output_handler = mb_output_handler ;; Choisit le jeu de caractères default_charset = Shift_JIS ;; Le langage par défaut est le japonais mbstring.language = Japanese ;; Activation de la traduction automatique des données d'entrée HTTP mbstring.http_input = auto ;; Convertit en SJIS mbstring.http_output = SJIS ;;Utilise le jeu de caractères interne EUC-JP mbstring.internal_encoding = EUC-JP ;; Ne pas afficher les caractères invalides mbstring.substitute_character = none