首頁  >  文章  >  後端開發  >  深入理解PHP中的 empty()函數

深入理解PHP中的 empty()函數

PHPz
PHPz轉載
2016-07-29 08:36:543267瀏覽

這篇文章主要介紹了PHP中的 empty()函數,有一定的參考價值,有興趣的朋友可以參考一下,希望對你有幫助! 

從表面上看,很容易誤解empty()函數是判斷字串是否為空的函數,其實並不是,我也因此吃了很多虧。

empty()函數是用來測試變數是否已經配置。若變數已存在、非空字串或非零,則傳回 false 值;反之傳回 true值。所以,當字串的值為0時,也回傳true,就是執行empty內部的語句。這就是陷阱

如: 假設$value = 0; 則empty($value)=false

勸告各位,千萬注意使用empty()函數

勸告各位,千萬注意使用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

<table width="760" border="1" align="center" cellpadding="3">
<?
$dir = &#39;./201006/24/&#39;;
$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

更相關教學請造訪 
php程式設計從入門到精通全套影片教學

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除