php中将字符串转小写用strtolower()函数,仅转换英文字母,不改变中文、数字和符号;处理utf-8多字节字符应使用mb_strtolower()。

如果您需要将PHP中的字符串全部转换为小写形式,则可以使用内置函数 strtolower()。该函数接收一个字符串参数,并返回其所有字母字符转换为小写后的副本。以下是具体使用方法:
一、基本用法
strtolower() 是最直接的字符串小写转换方式,适用于ASCII字符及部分UTF-8编码的拉丁字母。它不修改原字符串,而是生成新字符串。
1、定义一个包含大写字母的字符串变量,例如 $str = "Hello WORLD! 123";
2、调用 strtolower($str),并将结果赋值给新变量,例如 $lower = strtolower($str);
立即学习“PHP免费学习笔记(深入)”;
3、输出 $lower,得到结果:hello world! 123
二、处理中文与数字符号
strtolower() 对非ASCII字符(如中文、日文、俄文字母)和数字、标点符号无影响,仅作用于英文字母。因此原始字符串中的中文和数字保持不变。
1、定义字符串 $str = "PHP编程ABC测试123!";
2、执行 $result = strtolower($str);
3、输出 $result,结果为:php编程abc测试123!
三、配合 trim() 去除首尾空格
当输入字符串可能含有不可见空格或制表符时,单独使用 strtolower() 无法清理空白字符。结合 trim() 可提升数据一致性。
1、定义字符串 $str = " HeLLo WoRLD \t ";
2、先用 trim() 清理两端空白,再传入 strtolower():$clean = strtolower(trim($str));
3、输出 $clean,结果为:hello world
四、在数组中批量转换
若需对索引数组中的每个字符串元素统一转小写,可结合 array_map() 与 strtolower() 实现批量处理,避免手动循环。
1、定义数组 $arr = ["HELLO", "WORLD", "PHP"];
2、调用 $lowerArr = array_map('strtolower', $arr);
3、输出 $lowerArr,结果为:["hello", "world", "php"]
五、替代方案:mb_strtolower() 处理多字节字符
当字符串含 UTF-8 编码的非英文字符(如德语变音字母、土耳其语 I/i 规则等),strtolower() 可能失效或产生错误映射。mb_strtolower() 支持指定编码,更安全可靠。
1、确保已启用 mbstring 扩展
2、定义字符串 $str = "ÄÖÜ";
3、调用 $result = mb_strtolower($str, 'UTF-8');
4、输出 $result,结果为:äöü











