本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
在PHP中,想要将字符串中的字母全部转换为小写,可以利用以下3个函数:
函数名称 | 功能 |
---|---|
strtoupper | 将字符串中的字符都转化为大写 |
mb_strtoupper | 将字符串中的字符都转化为大写(与 strtoupper 函数有区别) |
mb_convert_case | 按照不同的模式对字符串进行转换 |
方法1:使用strtoupper() 函数进行转换
strtoupper() 函数可以将字符串中的字母转化为大写,语法格式如下:
strtoupper($string)
其中,$string 为一个字符串类型的参数,该函数可以将参数 $string 中的字母转化为大写,并将转化后的字符串返回。
<?php
header("Content-type:text/html;charset=utf-8");
$str = "https://www.php.cn/";
echo "原字符串:<br> $str <br><br>";
$str = strtoupper($str);
echo "转换后:<br> $str";
?>
方法2:使用mb_strtoupper() 函数进行转换
mb_strtoupper() 函数的功能与 strtoupper() 函数类似,同样可以将字符串中的字母转化为大写,并且 mb_strtoupper() 函数还可以设置参数的字符编码,其语法格式如下:
mb_strtoupper($str [, $encoding = mb_internal_encoding()])
其中,$str 是需要转化的字符串,$encoding 是一个可选参数,用来设置参数的字符编码。
和 strtoupper() 函数不同的是,$str 中的字母是通过 Unicode 字符属性来确定的。因此 mb_strtoupper() 函数不会受语言环境(locale)设置的影响,能够转化任何具有“字母”属性的字符,例如 a 变音符号(ä)。
示例1:
<?php
header('content-type:text/html;charset=utf-8');
$str = "hello";
echo "原字符串:<br> $str <br><br>";
$str = mb_strtoupper($str, 'UTF-8');
echo "转换后:<br> $str";
?>
示例2:
<?php
header("Content-type:text/html;charset=utf-8");
$str = "τάχιστη αλώπηξ βαφήσ ψημένη γη, δρασκελίζει υπέρ νωθρού κυνόσ";
echo "原字符串:<br> $str <br><br>";
$str = mb_strtoupper($str, 'UTF-8');
echo "转换后:<br> $str";
?>
方法3:使用mb_convert_case() 函数进行转换
mb_convert_case() 函数可以对字符串进行大小写转换,语法格式如下:
mb_convert_case($str, $mode [, $encoding = mb_internal_encoding()])
其中,$str 是需要转换的字符串;$mode 是转换模式,可以是 MB_CASE_UPPER
(全部转为大写)、 MB_CASE_LOWER
(全部转为小写)和 MB_CASE_TITLE
(首字母转为大写) 的其中一个;$encoding 是参数的字符编码,可以省略。
和 strtolower()、strtoupper() 函数相比,mb_convert_case() 函数大小写转换的执行根据 Unicode 字符属性的基础。因此 mb_convert_case() 函数的行为不受语言环境(locale)设置的影响,能够转换任意具有“字母”属性的字符,例如元音变音A(Ä)。
<?php
header("Content-type:text/html;charset=utf-8");
$str = 'Hello world!';
echo "原字符串:<br> $str <br><br>";
echo "转换后:<br>";
$str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8");
echo $str.'<br>';
$str = mb_convert_case($str, MB_CASE_LOWER, "UTF-8");
echo $str.'<br>';
$str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8");
echo $str.'<br>';
?>