我有两个字符串试图比较,但它显示它们不相等。可能是什么问题呢?这是正在运行的代码。
<?php
$x = "Come and enjoy the show.";
$y = "Come and enjoy the show.";
if (strcmp($x, $y)) {
echo "They are the same.";
} else {
echo "They are not the same.";
}
?>
答案 0 :(得分:2)
strcmp - 在完全匹配时返回零&amp;因此,在你的情况下,条件将被执行。
定义:返回&lt;如果str1小于str2,则为0; &GT;如果str1大于str2则为0,如果它们相等则为0。
用,
改变你的状况if (strcmp($x, $y) === 0) {
echo "They are the same.";
} else {
echo "They are not the same.";
}
<强> DEMO 强>
答案 1 :(得分:1)
strcmp可以返回多个值。
来自doc:
返回&lt;如果str1小于str2,则为0; &GT;如果str1大于str2则为0,如果它们相等则为0。
所以,请尝试以下代码:
if (strcmp($x, $y) === 0) {
echo "They are the same.";
} else {
echo "They are not the same.";
}
?>
答案 2 :(得分:0)
试试这个......
strcmp功能 返回&lt;如果str1小于str2,则为0; &GT;如果str1大于str2则为0,如果它们相等则为0。
if (strcmp($x, $y) === 0) {
echo "They are the same.";
} else {
echo "They are not the same.";
}