本问题已经有最佳答案,请猛点这里访问。
我偶然偶然发现了一段PHP代码,并且可以看到作者用<>做了一个不等于比较:
if ($variable <>"") {
echo"Hello, I am having some value";
}
我一直使用!=:
if ($variable !="") {
echo"Hello, I am having some value";
}
有什么特殊情况,我应该使用<>而不是!=吗?
从来不知道你可以在php中做<>
我相信当PHP首次开发时,其中一个设计目标是使语言变得灵活,这就是为什么它们引入了每个循环类型以及您可能想到的每种操作符类型的原因。
<>在优先级类别方面与!=略有不同,但介于它们之间的运算符意味着没有任何实际差异。
我想<>运算符已经在PHP中实现,因为它存在于其他一些语言中(例如,SQL)
<>和!=的意思几乎完全相同:我设法找到的唯一区别与它们的优先级有关:请参阅运算符优先级:它们不在同一行^^(这意味着它们之间存在差异,那两个)
虽然,我不得不承认我从未见过PHP中使用的<>。
请注意,人们通常使用!=;您可能应该这样做:它将使您的代码更容易理解。
而且,顺便说一句,你也有!==运算符,它也进行类型比较;但没有<< >>运算符或类似^^的东西
作为参考:比较运算符
我同意你关于使代码更容易理解。
实际上,我有点承认:我甚至还没记得在PHP中有一个<>操作符^^我甚至测试了你的代码以确保它有效^^在一些源代码中查找它肯定会感到奇怪! (我想我很久以前就在手册中看过了......但是甚至没记得^^)
他们在同一条线上(当你回答时可能有不同的优先权)。
好问题。它们是相同的,除了一个微妙的区别:<>具有比!=更高的优先级
为什么有他们?只是为了让事情按照你的预期运作。 PHP是借来的想法的混合物,而C程序员可能更喜欢$foo != $bar,具有BASIC背景的人可能会发现$foo <> $bar更容易被人看到。各自给自己!
啊,我明白了......至少有一些"差别"。;-)
它们具有非常接近但略有不同的优先级,但我看不出任何有用的时间。
只是很好奇