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_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()