downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

mb_substitute_character> <mb_strtoupper
[edit] Last updated: Fri, 17 May 2013

view this page in

mb_strwidth

(PHP 4 >= 4.0.6, PHP 5)

mb_strwidthReturn width of string

Beschreibung

int mb_strwidth ( string $str [, string $encoding ] )

Returns the width of string str.

Multi-byte characters are usually twice the width of single byte characters.

Characters width
Chars Width
U+0000 - U+0019 0
U+0020 - U+1FFF 1
U+2000 - U+FF60 2
U+FF61 - U+FF9F 1
U+FFA0 - 2

Parameter-Liste

str

The string being decoded.

encoding

Der encoding Parameter legt das Zeichenencoding fest. Wird er nicht übergeben so wird das interne Zeichenencoding genutzt.

Rückgabewerte

The width of string str.

Siehe auch



add a note add a note User Contributed Notes mb_strwidth - [2 notes]
up
1
Anonymous
5 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
larry1chan at gmail dot com
5 years ago
to convert a multi-byte character into hex strings:

$b = "現,市民派利市的習慣亦有所改變";

    printf("length of string: %d <br>", mb_strlen($b, 'UTF-8'));
    for ($i=0; $i < mb_strlen($b, 'UTF-8'); $i++){
        $ch = mb_substr($b, $i, 1, 'UTF-8');
        $chlen = mb_strwidth($ch, 'UTF-8');
        $hexs = '';
        for ($j=0; $j < $chlen; $j++)
            $hexs = $hexs . sprintf("%x", ord($ch[$j]));
        printf ("width=%d => '%s' |hex=%s<br>", $chlen, $ch, $hexs );
       
       
    }

 
show source | credits | sitemap | contact | advertising | mirror sites