截至当前,PHP中将字符串小写转换为大写的函数共有三个,分别是:
- strtoupper 将字符串中的字符都转化为大写(PHP 4, PHP 5, PHP 7, PHP 8)
- mb_strtoupper 将字符串中的字符都转化为大写(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
- mb_convert_case 按照不同的模式对字符串进行转换(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
下面详细讲解这三个函数及其用法。
1. strtoupper
1 |
strtoupper(string $string): string |
这个函数是直接返回传入字符串的大写,比如:
1 |
echo strtoupper("Hello WORLD!"); |
则直接输出:
1 |
HELLO WORLD! |
当然,也可以用变量接收输出值,比如:
1 2 |
$strUp = strtoupper("Hello WORLD!"); echo $strUp; |
同样也会输出HELLO WORLD!
2. mb_strtoupper
1 |
mb_strtoupper(string $str, string $encoding = mb_internal_encoding()): string |
这个函数则多了字符编码的参数encoding,如果省略或是 null,则使用内部字符编码。而要转换为大写的字符串为$str。
和上面的strtoupper() 不同的是,“字母”是通过Unicode字符属性来确定的。因此这个函数不会受语言环境(locale)设置影响,能够转化任何具有“字母”属性的字符,例如 a 变音符号(ä)也可以的到转换,而strtoupper()则不行。
举例:
1 2 3 4 5 |
<?php $str = "Mary Had A Little Lamb and She LOVED It So"; $str = mb_strtoupper($str); echo $str; // 打印的是 MARY HAD A LITTLE LAMB AND SHE LOVED IT SO ?> |
费拉丁文的情况下可以参考这个举例:
1 2 3 4 5 |
<?php $str = "Τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός"; $str = mb_strtoupper($str, 'UTF-8'); echo $str; // 打印的是 ΤΆΧΙΣΤΗ ΑΛΏΠΗΞ ΒΑΦΉΣ ΨΗΜΈΝΗ ΓΗ, ΔΡΑΣΚΕΛΊΖΕΙ ΥΠΈΡ ΝΩΘΡΟΎ ΚΥΝΌΣ ?> |
3. mb_convert_case
1 |
mb_convert_case(string $str, int $mode, string $encoding = mb_internal_encoding()): string |
第三个函数是mb_convert_case,这个函数则比上面一个函数mb_strtoupper又多了一个mode参数。
mb_convert_case的转换模式是由 mode 所决定,这个参数的值可以是以下三个中的一个。
- MB_CASE_UPPER —— 转换为大写
- MB_CASE_LOWER —— 转换为小写
- MB_CASE_TITLE —— 单词首字母转换为大写
举例:
1 2 3 4 5 6 7 |
<?php $str = "mary had a Little lamb and she loved it so"; $str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8"); echo $str; // 输出 MARY HAD A LITTLE LAMB AND SHE LOVED IT SO $str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8"); echo $str; // 输出 Mary Had A Little Lamb And She Loved It So ?> |
非拉丁文也是一样的,示例如下:
1 2 3 4 5 6 7 |
<?php $str = "Τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός"; $str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8"); echo $str; // 输出 ΤΆΧΙΣΤΗ ΑΛΏΠΗΞ ΒΑΦΉΣ ΨΗΜΈΝΗ ΓΗ, ΔΡΑΣΚΕΛΊΖΕΙ ΥΠΈΡ ΝΩΘΡΟΎ ΚΥΝΌΣ $str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8"); echo $str; // 输出 Τάχιστη Αλώπηξ Βαφήσ Ψημένη Γη, Δρασκελίζει Υπέρ Νωθρού Κυνόσ ?> |
以上,就是PHP中将字符串中小写字母转换为大写字母的三个方法,可以看出最简单的是第一个方法,只需要传入字符串即可,第二个则多了编码的设置,最复杂当属第三个,除了转换为大写意外还可以转换为小写以及首字母大写。
希望能给您提供些许帮助。
原创文章,作者:蓝洛水深,如若转载,请注明出处:https://blog.lanluo.cn/11568