PHP多字节字符串函数翻译

mb_check_encoding — 检查字符串是否为指定的编码 

bool mb_check_encoding ([ string $var = NULL [, string $encoding = mb_internal_encoding() ]] )

参数:

var :该字符串将被检测, 留空则使用内部字符编码

encoding :指定的编码

返回值:

成功时返回 TRUE, 或者在失败时返回 FALSE.

例:

<?php

$str=”这是一次编码测试”;

if(mb_check_encoding($str,”UTF-8″)){

    echo “UTF-8”;

}elseif(mb_check_encoding($str,”GBK”)){

    echo “GBK”;

}elseif(mb_check_encoding($str,”GB2312″)){

    echo “GB2312”;

}

?>

 

mb_convert_case — 字符串大小写转换

string mb_convert_case ( string $str , int $mode = MB_CASE_UPPER [, string $encoding = mb_internal_encoding() ] )

参数:

str :被转换的字符串;

mode :转换模式

           MB_CASE_UPPER(全部大写);

           MB_CASE_LOWER(全部小写);

           MB_CASE_TITLE(首字母大写);

Encoding: 字符编码。如果省略,则使用内部字符编码。

返回值:

转换后的字符串

 

mb_convert_encoding — 转换字符编码

string mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding ] )

参数:

Str:要转换的字符串;

to_encoding :转成什么编码;

from_encoding :被转换字符串的原编码 留空将使用将使用内部编码。

      可以使用 “auto”(自动) 支持 “ASCII,JIS,UTF-8,EUC-JP,SJIS”.

返回值:

转换后的字符串

 

mb_convert_kana —zen-kaku,han-kaku等转换为假名

string mb_convert_kana ( string $str [, string $option = “KV” [, string $encoding ]] )

只能用于日语 ,不做解释

 

mb_convert_variables — Convert character code in variable(s)

string mb_convert_variables ( string $to_encoding , mixed $from_encoding , mixed &$vars [, mixed &$… ] )

搁置

 

mb_decode_mimeheader — 解码mime头部的字符串

string mb_decode_mimeheader ( string $str )

参数:

Str:要解码的字符串

返回值:

解码后的字符串编码

 

mb_decode_numericentity — Decode HTML numeric string reference to character

搁置

 

mb_detect_encoding —检测字符编码

string mb_detect_encoding ( string $str [, mixed $encoding_list = mb_detect_order() [, bool $strict = false ]] )

参数:

str :被检测的字符串;

encoding_list:字符编码列表,可以是字符串 如果多个用逗号隔开的(注意,是一个字符串,不是多个 例 “JIS, eucjp-win, sjis-win”,可以是数组,如果为空则自动检测).

Strict:是否使用严格字符编码检测.默认为false 不使用

返回值:

检测到的字符编码,如果检测不到返回false

例:

<?php
echo mb_detect_encoding($str);
echo mb_detect_encoding($str, “auto”);/
echo mb_detect_encoding($str, “JIS, eucjp-win, sjis-win”);
$ary[] = “ASCII”;
$ary[] = “JIS”;
$ary[] = “EUC-JP”;
echo mb_detect_encoding($str, $ary);

?>

 

mb_substr — 截取字符串

string mb_substr ( string $str , int $start [, int $length [, string $encoding ]] )

参数:

Str;要处理的字符串;

Start:开始位置;

Length:截取长度;

Encoding:参数为字符编码。如果省略,则使用内部字符编码。

返回值:

截取后的字符串

 

mb_substr_count — 字符(串)出现的次数;

int mb_substr_count ( string $haystack , string $needle [, string $encoding ] )

参数:

haystack :要检测的字符串;

needle:要查找的字符(串);

encoding:参数为字符编码。如果省略,则使用内部字符编码。

返回值:

出现的次数;

 

mb_substitute_character

mixed mb_substitute_character ([ mixed $substrchar ] )

 

mb_strwidth — 返回字符串的长度

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

参数:

str : 被检测的字符串

encoding : encoding 参数为字符编码。如果省略,则使用内部字符编码。

返回值

字符串的长度

 

mb_strtoupper — 把字符串转换成大写

string mb_strtoupper ( string $str [, string $encoding = mb_internal_encoding() ] )

参数

Str : 要转换的字符串

encoding : encoding 参数为字符编码。如果省略,则使用内部字符编码。

返回值

字符全部转换为大写

 

mb_strtolower —把字符串转换成小写

string mb_strtolower ( string $str [, string $encoding = mb_internal_encoding() ] )

参数

str

要转换的字符串 encoding

encoding 参数为字符编码。如果省略,则使用内部字符编码。

返回值

字符全部转换为小写

 

mb_strstr —查找字符串首次出现的位置

string mb_strstr ( string $haystack , string $needle [, bool $part = false [, string $encoding ]] )

参数

haystack : 候查字符串

needle :要查找谁

part :true 返回needle之前的字符串,false 返回needle之后的字符串

encoding :参数为字符编码。如果省略,则使用内部字符编码

 

mb_strrpos计算指定字符串在目标字符串中最后一次出现的位置

参见 strrpos()

mb_strripos计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写)

参见 strripos()