我看到多個例子(從WordPress的芯):
if ('' != $qv['subpost'])
$qv['attachment'] = $qv['subpost'];
是上面的代碼相同:
if ($qv['subpost'] != '')
$qv['attachment'] = $qv['subpost'];
或者它們在功能上有所不同?
我看到多個例子(從WordPress的芯):
if ('' != $qv['subpost'])
$qv['attachment'] = $qv['subpost'];
是上面的代碼相同:
if ($qv['subpost'] != '')
$qv['attachment'] = $qv['subpost'];
或者它們在功能上有所不同?
有些人喜歡constant == variable
的選擇,因爲它會導致致命錯誤,如果你不小心鍵入=
,並嘗試做任務:
例如
$a = 'foo'; // assigns 'foo' to $a
$a == 'foo'; // tests for equality
'foo' == $a // tests for equality
'foo' = $a // syntax error - assigning value to a string constant
但在功能上,否則,兩個版本之間沒有區別。 a == b
完全等同於b == a
。
是的,他們做同樣的事情。它會檢查$qv['subpost']
是否包含兩個示例中的值。根本沒有區別,除非你是Yoda。
沒有區別。
(A == B) == (B == A)
,有人可以先放值的唯一事情是可讀性,例如:
if ('APPLE' == $var) {
} else if ('BANANA' == $var) {
}
沒有功能上的差異。你正在比較平等,不管他們的價值觀在哪一邊,他們都會平等或不平等。
這個問題歸結爲代碼風格。就個人而言,當與靜態值進行比較時,我寧願始終在左邊有變量。其他人不同意。使用您正在處理的項目中的任何風格。
有兩種程序員有;那些尤達和那些誰沒有。 – 2014-10-02 14:20:40
有些人喜歡尤達程序(它需要一個不同的心態,但去除了一個=時,應需要兩個問題) – 2014-10-02 14:22:24
當然,在這個特殊的例子尤達大師的風格是沒有意義的,因爲它使用'!='不''==。 – 2014-10-02 14:25:23