php中不进行比较时的两个等号
当不用于比较时,这两个等号是什么意思php中不进行比较时的两个等号,php,syntax,Php,Syntax,当不用于比较时,这两个等号是什么意思 $saveOrder = $listOrder == 'a.ordering'; 我在php中从未见过这样的东西。。。。我正在查看weblinks Joomla 1.7管理组件 谢谢我想这和$saveOrder=($listOrder='a.ordering')是一样的; 我猜它与$saveOrder=($listOrder=='a.ordering')相同; 他们正在比较。它只是没有用括号括起来(就像比较表达式中的if/while/etc) $save
$saveOrder = $listOrder == 'a.ordering';
我在php中从未见过这样的东西。。。。我正在查看weblinks Joomla 1.7管理组件
谢谢我想这和
$saveOrder=($listOrder='a.ordering')是一样的;
我猜它与$saveOrder=($listOrder=='a.ordering')相同;
他们正在比较。它只是没有用括号括起来(就像比较表达式中的if
/while
/etc)
$saveOrder
将被分配true
或false
(条件的结果)。它们正在比较。它只是没有用括号括起来(就像比较表达式中的if
/while
/etc)
$saveOrder
将被分配true
或false
(条件的结果)。它用于比较。除了之外,比较结果被分配给$saveOrder
以下代码:
<?php
list($listOrder1, $listOrder2) = array('a.ordering', 'a.something_else');
$saveOrder1 = $listOrder1 == 'a.ordering';
$saveOrder2 = $listOrder2 == 'a.ordering';
它用于比较。除了之外,比较结果被分配给$saveOrder
以下代码:
<?php
list($listOrder1, $listOrder2) = array('a.ordering', 'a.something_else');
$saveOrder1 = $listOrder1 == 'a.ordering';
$saveOrder2 = $listOrder2 == 'a.ordering';
在您的语句中,双等号(=)也仅用于比较。实际上,您的语句同时包含'assignment'(=)和'comparison'(==)运算符,这会导致您的混淆
这相当于$saveOrder=($listOrder=='a.ordering')代码>,因此首先将$listOrder与“a.ordering”进行比较,并将结果(true或false)分配给$saveOrder
希望这能澄清您的困惑,如果不让我知道一次的话。在您的声明中,双等号(=)也仅用于比较目的。实际上,您的语句同时包含'assignment'(=)和'comparison'(==)运算符,这会导致您的混淆
$listOrder1='a.ordering';
$listOrder1='wrong'
$saveOrder1 = $listOrder1 == 'a.ordering';//1
$saveOrder2 = $listOrder2 == 'a.ordering';//
这相当于$saveOrder=($listOrder=='a.ordering')代码>,因此首先将$listOrder与“a.ordering”进行比较,并将结果(true或false)分配给$saveOrder
希望这清楚你的困惑,如果不让我知道一次
$listOrder1='a.ordering';
$listOrder1='wrong'
$saveOrder1 = $listOrder1 == 'a.ordering';//1
$saveOrder2 = $listOrder2 == 'a.ordering';//
打印时可以看到输出,第一个将为1
,而第二个将返回:
(即无)
打印时可以看到输出,第一个将是1
,而第二个将返回:
(即无)什么使您认为它没有被用于比较?在我看来,它就像是对比较$listOrder
和'a.ordering'
的布尔结果的$saveOrder
变量的赋值。你怎么会认为它不用于比较?在我看来,它就像是对比较$listOrder
和'a.ordering'
的布尔结果的$saveOrder
变量的赋值。