PHP 8.1.0 Alpha 2 available for testing

mb_strwidth

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_strwidthRetourne la taille d'une chaîne

Description

mb_strwidth(string $string, string|null $encoding = null): int

Retourne la chasse de string string, où les caractères à demi-chasse comptent en tant que 1, et les caractères à pleine chasse comptent en tant que 2. Voir » http://www.unicode.org/reports/tr11/ pour plus de détails concernant les chasse des caractères Asiatique de l'Est.

Les caractères à pleine chasse sont : U+1100-U+115F, U+11A3-U+11A7, U+11FA-U+11FF, U+2329-U+232A, U+2E80-U+2E99, U+2E9B-U+2EF3, U+2F00-U+2FD5, U+2FF0-U+2FFB, U+3000-U+303E, U+3041-U+3096, U+3099-U+30FF, U+3105-U+312D, U+3131-U+318E, U+3190-U+31BA, U+31C0-U+31E3, U+31F0-U+321E, U+3220-U+3247, U+3250-U+32FE, U+3300-U+4DBF, U+4E00-U+A48C, U+A490-U+A4C6, U+A960-U+A97C, U+AC00-U+D7A3, U+D7B0-U+D7C6, U+D7CB-U+D7FB, U+F900-U+FAFF, U+FE10-U+FE19, U+FE30-U+FE52, U+FE54-U+FE66, U+FE68-U+FE6B, U+FF01-U+FF60, U+FFE0-U+FFE6, U+1B000-U+1B001, U+1F200-U+1F202, U+1F210-U+1F23A, U+1F240-U+1F248, U+1F250-U+1F251, U+20000-U+2FFFD, U+30000-U+3FFFD. Tous les autres caractères sont des caractères à demi chasse.

Liste de paramètres

string

La chaîne à analyser.

encoding

Le paramètre encoding est l'encodage des caractères. S'il est omis ou null, l'encodage de caractères interne sera utilisé.

Valeurs de retour

La taille de la string string.

Historique

Version Description
8.0.0 encoding est désormais nullable.

Exemples

Exemple #1 Exemple mb_strwidth()

<?php
var_dump
(
    
mb_strwidth('a'),       // LATIN SMALL LETTER A
    
mb_strwidth("\u{ff41}"// FULLWIDTH LATIN SMALL LETTER A
);
?>

L'exemple ci-dessus va afficher :

int(1)
int(2)

Voir aussi

add a note add a note

User Contributed Notes 2 notes

up
4
Anonymous
13 years ago
Note: mb_strwidth is NOT returning bytes.  It's returning the width of monotype characters.  (In some languages, some characters will take up 2 character widths if displayed in monotype.)
up
0
Adam Altman
7 years ago
Important, if you're looking to trim/cut/truncate a string so that it will fit a certain byte size (for example to fit in a database field), look at:  mb_strcut()
To Top