PHP中这两个比较有什么区别?

时间:2012-01-14 08:50:40

标签: php comparison operators

我试图使用以下代码比较PHP中的两个值:

if ($val1 != $val2) .....

if ($val1 <> $val2) .......

以上比较代码是否在所有方面都相同?

我很困惑在这两个(!=和&lt;&gt;)中使用哪个运算符!!

更新:

这是否与比较字符串或数字字符串有关?

5 个答案:

答案 0 :(得分:5)

php documentation on Comparison Operators告诉我们!=<>实际上执行相同的

两者都被命名为“ Not Equal ”, 并被描述为:

  

如果在类型杂耍之后$ a不等于$ b,则为TRUE。

大多数人使用!=,因为这更符合其他支持<>的编程语言。事实上,我不记得在任何PHP代码中都使用过<>

答案 1 :(得分:2)

两者都做同样的事情(see docs),但你绝对应该使用!=。我从未见过有人使用过<>

我可以想象这是从SQL中获取的,其中<>也被用作不等式运算符。

答案 2 :(得分:1)

没有区别,两者都有相同的含义。

请检查:http://php.net/manual/en/language.operators.comparison.php

我建议使用C风格的比较运算符!=

希望这有帮助。

答案 3 :(得分:0)

我认为两者是相同的

答案 4 :(得分:0)

根据php手册没有区别

  

$ a!= $ b - 不等于 - 如果在类型杂耍后$ a不等于$ b,则为TRUE。
    $ a&lt;&gt; $ b - 不等于 - 如果在类型杂耍之后$ a不等于$ b,则为TRUE。

我认为最大的区别在于风格和惯例。
大多数时候我使用 != 进行比较。它看起来似乎更好,因为至少对我来说, 总是意味着 。另一方面,当我想进行比较时,我认为比较为'小于'或'大于'但不等于'我使用&lt;&gt; (非常罕见)