2026-02-16 00:13:19
在PHP中,将字符串转换为小写或大写可通过内置函数或多字节安全函数实现,具体选择取决于字符编码需求。以下是详细解决方案:
一、基础大小写转换函数(单字节字符)strtolower(string $string)将字符串中所有英文字符转换为小写,适用于ASCII或ISO-8859-1编码。
$text = "Hello World!";echo strtolower($text); // 输出: hello world!strtoupper(string $string)将字符串中所有英文字符转换为大写。
echo strtoupper($text); // 输出: HELLO WORLD!lcfirst(string $string)将字符串的第一个字符转换为小写。
echo lcfirst("Hello"); // 输出: helloucfirst(string $string)将字符串的第一个字符转换为大写。
$sentence = "hello world";echo ucfirst($sentence); // 输出: Hello worlducwords(string $string)将字符串中每个单词的首字母转换为大写。
echo ucwords($sentence); // 输出: Hello World基础函数无法正确处理中文、日文等非拉丁字符,需使用mbstring扩展提供的函数:
mb_strtolower(string $string, ?string $encoding = null)多字节字符串转小写,需指定编码(如UTF-8)。
mb_internal_encoding("UTF-8");$text = "你好世界!PHP真棒。";echo mb_strtolower($text); // 输出: 你好世界!php真棒。mb_strtoupper(string $string, ?string $encoding = null)多字节字符串转大写。
echo mb_strtoupper($text); // 输出: 你好世界!PHP真棒。trim() / ltrim() / rtrim()去除字符串两端或指定侧的空白字符。
$input = " Hello ";echo trim($input); // 输出: Hellostr_replace() / str_ireplace()替换字符串中的匹配项(区分/不区分大小写)。
$text = "PHP is great";echo str_replace("PHP", "JavaScript", $text); // 输出: JavaScript is greatsubstr() / mb_substr()截取子字符串(多字节安全版需指定编码)。
$text = "这是一段中文";echo mb_substr($text, 0, 3, "UTF-8"); // 输出: 这是一段strlen() / mb_strlen()获取字符串字节长度或字符数。
$text = "Hello";echo strlen($text); // 输出: 5(字节数)echo mb_strlen($text, "UTF-8"); // 输出: 5(字符数)