用于多字节字符编码的 ucfirst() 函数
2022-08-30 08:39:25
我问过关于斯特托洛弗
函数的问题。但是当使用外语字符时,它不会将它们转换为大写,所以我必须使用:
mb_strtolower($a,"utf8");
但是,如果我想使用函数,我该怎么办?我没有找到任何类似的功能,我可以在其中设置编码类型。ucfirst()
我问过关于斯特托洛弗
函数的问题。但是当使用外语字符时,它不会将它们转换为大写,所以我必须使用:
mb_strtolower($a,"utf8");
但是,如果我想使用函数,我该怎么办?我没有找到任何类似的功能,我可以在其中设置编码类型。ucfirst()
正如您已经注意到的那样,没有功能。你可以用两个来假一个:mb_ucfirst
mb_ucfirst
mb_substr
function mb_ucfirst($string, $encoding)
{
$firstChar = mb_substr($string, 0, 1, $encoding);
$then = mb_substr($string, 1, null, $encoding);
return mb_strtoupper($firstChar, $encoding) . $then;
}
这是更简洁的解决方案,尽管它与函数非常相似:ucwords
$final_string = mb_convert_case($your_string, MB_CASE_TITLE, 'UTF-8');
如果您需要将字符串大写为一个单词,这是最好的解决方案。