最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php empty()與isset()區(qū)別的詳細(xì)介紹

 更新時(shí)間:2013年06月17日 17:08:11   作者:  
本篇文章是對(duì)php中empty()與isset()的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

在使用 php 編寫頁面程序時(shí),我經(jīng)常使用變量處理函數(shù)判斷 php 頁面尾部參數(shù)的某個(gè)變量值是否為空,開始的時(shí)候我習(xí)慣了使用 empty() 函數(shù),卻發(fā)現(xiàn)了一些問題,因此改用 isset() 函數(shù),問題不再。

顧名思義,empty() 判斷一個(gè)變量是否為“空”,isset() 判斷一個(gè)變量是否已經(jīng)設(shè)置。正是這種所謂的“顧名思義”,令我開始時(shí)走了些彎路:當(dāng)一個(gè)變量值等于0時(shí),empty()也會(huì)成立(True),因而會(huì)發(fā)生 一些意外。原來,empty() 和 isset() 雖然都是變量處理函數(shù),它們都用來判斷變量是否已經(jīng)配置,它們卻是有一定的區(qū)別empty還會(huì)檢測變量是否為空、為零。當(dāng)一個(gè)變量值為0,empty() 認(rèn)為這個(gè)變量同等于空,即相當(dāng)于沒有設(shè)置。

比如檢測 $id 變量,當(dāng) $id=0 時(shí),用empty() 和 isset() 來檢測變量 $id 是否已經(jīng)配置,兩都將返回不同的值—— empty() 認(rèn)為沒有配置,isset() 能夠取得 $id 的值:

復(fù)制代碼 代碼如下:

$id=0;
    empty($id)?print "It's empty .":print "It's $id .";
      //結(jié)果:It's empty .
    print "<br>";
    !isset($id)?print "It's empty .":print "It's $id .";
      //結(jié)果:It's 0 .

這意味著,我們?cè)谑褂米兞刻幚砗瘮?shù)時(shí),當(dāng)該變量可能出現(xiàn)0的值,使用 empty() 要小心,這個(gè)時(shí)候用 isset 取代它更明智一些。
當(dāng)一個(gè)php頁面的 URL 尾部參數(shù)出現(xiàn) id=0 時(shí)(比如:test.php?id=0),試比較:
復(fù)制代碼 代碼如下:

if(empty($id)) $id=1; - 若 id=0 ,id 也會(huì)為1
if(!isset($id)) $id=1; - 若 id=0 ,id 不會(huì)為1

可分開運(yùn)行以下代碼檢測上述推斷:
復(fù)制代碼 代碼如下:

if(empty($id)) $id=1;
    print $id; // 得到 1
    if(!isset($id)) $id=1;
    print $id; //得到 0

相關(guān)文章

最新評(píng)論

安宁市| 广西| 井陉县| 靖江市| 永清县| 荃湾区| 华宁县| 耒阳市| 宝坻区| 潼南县| 图们市| 东丽区| 成武县| 富源县| 涿鹿县| 开封市| 高台县| 扎兰屯市| 鲁甸县| 准格尔旗| 天峨县| 绥德县| 潞城市| 景德镇市| 西林县| 台北县| 清徐县| 井冈山市| 小金县| 敦煌市| 舟曲县| 奇台县| 苗栗县| 门源| 房山区| 卓资县| 万全县| 黎城县| 峨山| 抚顺市| 宽甸|