2016-09-30 25 views
-4

我覺得很難理解PHP中的空數據類型。爲什麼它甚至需要存在?如果它只是表示一個空值,爲什麼PHP不提供一種方法將它從代碼中移除,因爲變量包含它,在我們的應用程序中沒有任何有用的事情要做?爲什麼Null值存在PHP?

+0

因爲有些人可能會考慮採取行動空值是有價值的,在例如函數返回....只是因爲你看到它沒有價值,並不意味着其他人不覺得它有用的應用程序 –

+5

它不代表一個空值 - 它表示你有一個變量,但你*不*有一個值。例如:getSomeObject()可以給你一個對象 - 或者它可以讓你null,告訴你沒有什麼可以返回的。 –

+0

作爲一個例子,MS Excel有一個空數據類型,所以如果從Excel電子表格中讀取包含該數據類型的單元格,那麼如果不是null,我會返回什麼?一個空字符串不是一回事,這是一個不同的有效值;布爾真/假也是不同且同樣有效的;所以我返回一個PHP空,而不是 –

回答

1

考慮一下:

if (some_condition) $var1 = "Bob"; 

現在,如果該條件爲假,則$var1因爲你沒有定義它。所以,你可以決定檢查它是否爲空來繼續你想要做的事情。

if (!is_null($var1)) { 
    // do something 
} 

希望有幫助。