2016-04-18 30 views
1

我總是包含這兩種情況之一的變量:如何確定false和0之間的差異?

  • false
  • 一些(它也可以0

我在現實中的變量是這樣的:

$index = array_search(1, array_column($var, 'box')); 
//=> the output could be something like these: false, 0, 1, 2, ... 

現在我想檢測$indexfalse或其他。我怎樣才能實現這樣的條件?

應當注意這些都不不起作用:

if (empty($index)) { } 
if (!isset($index)) { } 
if (is_null($index)) { } 

而且我想這個條件:

if (?) { // $index is false } else { // $index is a number (even 0) } 
+2

'$指數== FALSE' – Rizier123

+0

@ Rizier123 EMM的,有趣的,我認爲這將是非常困難。 – stack

回答

1

使用===運營商...

if(false == 0) 

這將投0爲假,你會得到虛假==假

if(false === 0) 

這並沒有鑄造和你得到錯誤比較零,這是不一樣的。

對於不等於,使用==,而不是===

+0

if false === 0總是爲false,因爲你將一個布爾值與一個整數進行比較,它永遠不會相同 –

+0

@bub正確。我指出false === 0是false而false == 0是true。 – kainaw

相關問題