這篇文章主要介紹了PHP中的 empty()函數,有一定的參考價值,有興趣的朋友可以參考一下,希望對你有幫助!
從表面上看,很容易誤解empty()函數是判斷字串是否為空的函數,其實並不是,我也因此吃了很多虧。
empty()函數是用來測試變數是否已經配置。若變數已存在、非空字串或非零,則傳回 false 值;反之傳回 true值。所以,當字串的值為0時,也回傳true,就是執行empty內部的語句。這就是陷阱
如: 假設$value = 0; 則empty($value)=false
勸告各位,千萬注意使用empty()函數
判斷字串是否為空,可以這麼判斷: if ($value=="") ...
* 格式:bool empty ( mixed var )
變數是否為空
* 回傳值:
* 若變數不存在則回傳TRUE
* 若變數存在且其值為""、0、"0"、NULL、、FALSE、array() 、var $var; 以及沒有任何屬性的對象,則返回TURE
* 若變數存在且值不為""、0、"0"、NULL、、FALSE、 array()、var $var; 以及沒有任何屬性的對象,則回傳FALSE
<table width="760" border="1" align="center" cellpadding="3"> <? $dir = './201006/24/'; $object[] = @readdir($dir); foreach ($object as $dirail) if (empty($dirail)) { ?> <tr> <td align="center"><font color="red">目录下没有图片</font></td> </tr> <? } else { ?> <tr> <td align="center"><font color="red">目录下有图片</font></td> </tr> <? } ?> </table>從表面上看,很容易誤解empty()函數是判斷字串是否為空的函數,其實並不是,我也因此吃了很多虧。 empty()函數是用來測試變數是否已經配置。若變數已存在、非空字串或非零,則傳回 false 值;反之傳回 true值。所以,當字串的值為0時,也回傳true,就是執行empty內部的語句。這就是陷阱。如: 假設 $value = 0; 則empty($value)=false。勸告各位,千萬注意使用empty()函數。判斷字串是否為空,可以這麼判斷: if ($value=="") ... 格式:bool empty ( mixed var ) 功能:檢查變數是否為空回傳值:若變數不存在則回傳TRUE 若變數存在且其值為""、0、"0"、NULL、、FALSE、array() 、var $var; 以及沒有任何屬性的對象,則傳回TURE 若變數存在且值不為""、0、"0"、NULL、、FALSE、array()、var $var; 以及沒有任何屬性的對象,則回傳FALSE 版本:PHP 3, PHP 4, PHP 5