不区分大小写的字符串比较

2022-08-30 08:08:35

我想比较两个变量以查看它们是否相同,但我希望此比较不区分大小写。

例如,这将区分大小写:

if($var1 == $var2){
   ...
}

但是我希望这是不区分大小写的,我该如何处理呢?


答案 1

这相当简单;你只需要在这两个变量上调用 strtolower()。

如果需要处理 Unicode 或国际字符集,可以使用 mb_strtolower()。

请注意,其他答案建议使用 strcasecmp()—该函数不处理多字节字符,因此任何 UTF-8 字符串的结果都是假的。


答案 2

strcasecmp() 如果字符串相同(除了大小写变体),则返回 0,因此您可以使用:

if (strcasecmp($var1, $var2) == 0) {
}

推荐