我在php.net上找不到这个。在PHP语言中比较字符串时,双等号(==
)是否区分大小写?
发布于 2010-08-18 04:35:54
是的,==
区分大小写。
可以使用strcasecmp
进行不区分大小写的比较
发布于 2010-08-18 04:37:18
是的,但它会逐字节地进行比较。
如果您正在比较unicode字符串,您可能希望首先对其进行规范化。请参见Normalizer
类。
示例(UTF-8格式的输出):
$s1 = mb_convert_encoding("\x00\xe9", "UTF-8", "UTF-16BE");
$s2 = mb_convert_encoding("\x00\x65\x03\x01", "UTF-8", "UTF-16BE");
//look the same:
echo $s1, "\n";
echo $s2, "\n";
var_dump($s1 == $s2); //false
var_dump(Normalizer::normalize($s1) == Normalizer::normalize($s2)); //true
发布于 2010-08-18 04:37:04
是的,==
区分大小写。
顺便说一下,对于不区分大小写的比较,可以使用strcasecmp
<?php
$var1 = "Hello";
$var2 = "hello";
echo (strcasecmp($var1, $var2) == 0); // TRUE;
?>
https://stackoverflow.com/questions/3506706
复制相似问题