1
$bBoolVal = ((6 < 5) Or (13 - 6 > 0));
if ($bBoolVal)  echo 'makes sense'; else echo 'makes no sense';

結果:「理にかなっている」

$bBoolVal = (6 < 5) Or (13 - 6 > 0);
if ($bBoolVal)  echo 'makes sense'; else echo 'makes no sense';

結果:「意味がない」

あたかも「=」が「Or」よりも強く結合しているかのようです - 確かに違いますか?

4

5 に答える 5

1

PHP の演算子の優先順位に従って、動作は正しいです。

http://php.net/manual/en/language.operators.precedence.php

'&&', '||'よりも優先されます'='が、'='は ' よりも優先されます。and', 'or'

于 2013-08-03T14:32:15.697 に答える
0

はい、= の方が優先されます。このメカニズムを悪用するおなじみの例は、php のマニュアルでよく見られます。

$result = mysql_query($sql) or die(mysql_error());

それは次のように機能します

$result = mysql_query($sql);
if (!$result) die(mysql_error());
于 2013-08-03T14:33:20.500 に答える