校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > php empty 函數判斷結果為空但實際值卻為非空的原因解析

php empty 函數判斷結果為空但實際值卻為非空的原因解析

熱門標簽:智能外呼電銷系統 哈爾濱400電話辦理到易號網 寶安400電話辦理 拉薩打電話機器人 電銷機器人-快迭智能 h5 地圖標注 高識別電銷機器人 沈陽人工智能電銷機器人公司 合肥外呼系統app

最近我在一個項目中使用 empty 時獲取到了一些意料之外的結果。下面是我處理后的調試記錄,在這里與你分享了。

var_dump(
  $person->firstName,
  empty($person->firstName)
);

它的結果是:

string(5) "Freek"
bool(true)

結果出人意料。為什么變量的值為字符串,但同時會是空值呢?讓我們在 $person->firstName 變量上嘗試使用其它一些函數來進行判斷吧:

var_dump(
  $person->firstName,
  empty($person->firstName),
  isset($person->firstName),
  is_null($person->firstName)
);

以上結果為:

string(5) "Freek"
bool(true) // empty
bool(true) // isset
bool(false) // is_null

譯者注:這邊的結果可能存在問題 isset 的結果同樣為 false,可以到 這里 去運行下查看結果。

isset 和 is_null 函數執行結果符合預期判斷,唯獨 empty 函數返回了錯誤結果。

這里讓我們來看看 person 類的實現代碼吧:

class person
{  protected $attributes = [];
  public function __construct(array $attributes)
  {
    $this->attributes = $attributes;
  }
  public function __get($name)
  {
    return $this->attributes[$name] ?? null;
  }
}

從上述代碼我們可以看到 Person 對象的成員變量是通過 __get 魔術方法從 $attributes 數組中檢索出來的。

當將變量傳入一個普通函數時,$person->firstName 會先進行取值處理,然后再將獲取到的結果作為參數傳入函數內。

但是 empty 不是一個函數,而是一種數據結構。所以當將 $person->firstName** 傳入 **empty** 時,并不會先進行取值處理。而是會先判斷 **$person 對象成員變量 firstName 的內容,由于這個變量并未真實存在,所以返回 false。

在正中應用場景下,如果你希望 empty 函數能夠正常處理變量,我們需要在類中實現 __isset 魔術方法。

class Person
{
  protected $attributes = [];
  public function __construct(array $attributes)
  {
    $this->attributes = $attributes;
  }
  public function __get($name)
  {
    return $this->attributes[$name] ?? null;
  }
  public function __isset($name)
  {
    $attribute = $this->$name;
    return !empty($attribute);
  }
}

這是當 empty 進行控制判斷時,會使用這個魔術方法來判斷最終的結果。

再讓我們看看輸出結果:

var_dump(
  $person->firstName, 
  empty($person->firstName)
);

新的檢測結果:

string(5) "Freek"
bool(false)

總結

以上所述是小編給大家介紹的php empty 函數判斷結果為空但實際值卻為非空的原因解析,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • 深入理解PHP中的empty和isset函數
  • PHP5.5和之前的版本empty函數的不同之處
  • PHP empty函數報錯解決辦法
  • PHP表單驗證的3個函數ISSET()、empty()、is_numeric()的使用方法
  • php empty函數判斷mysql表單是否為空
  • php empty函數 使用說明

標簽:巴中 山東 成都 張家口 林芝 泰州 威海 梅州

巨人網絡通訊聲明:本文標題《php empty 函數判斷結果為空但實際值卻為非空的原因解析》,本文關鍵詞  php,empty,函數,判斷,結,果為,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《php empty 函數判斷結果為空但實際值卻為非空的原因解析》相關的同類信息!
  • 本頁收集關于php empty 函數判斷結果為空但實際值卻為非空的原因解析的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    樱桃视频在线观看一区| 偷窥国产亚洲免费视频| 久久新电视剧免费观看| 亚洲成av人影院| 欧美日韩一级二级| 日韩电影在线一区二区三区| 欧美一级高清片| 国产精品亚洲午夜一区二区三区| 欧美精品一区二区三区蜜臀| 国产mv日韩mv欧美| 一区二区三区国产精品| 欧美日韩不卡在线| 国产呦萝稀缺另类资源| 国产精品美女久久久久久2018| 色婷婷香蕉在线一区二区| 亚洲午夜一区二区| 欧美mv日韩mv国产网站app| 成人午夜视频网站| 亚洲国产视频直播| 久久亚洲二区三区| 91久久人澡人人添人人爽欧美| 日本不卡一二三区黄网| 国产精品久久久久影院| 91精品国产综合久久婷婷香蕉| 丰满少妇在线播放bd日韩电影| 亚洲va天堂va国产va久| 国产精品欧美久久久久一区二区| 欧美综合视频在线观看| 国产主播一区二区三区| 亚洲国产精品嫩草影院| 国产女人水真多18毛片18精品视频| 欧美综合一区二区三区| 国产成人av影院| 日韩av电影免费观看高清完整版 | 91在线观看视频| 国产精品资源站在线| 日韩av电影天堂| 亚洲一区二区三区国产| 中文字幕乱码亚洲精品一区| 精品国产一区二区三区不卡| 欧美精品18+| 精品视频色一区| 欧美系列日韩一区| 色婷婷久久一区二区三区麻豆| 国产成人高清视频| 国产成人av影院| 懂色av一区二区三区免费观看| 久久99九九99精品| 六月丁香综合在线视频| 日韩电影在线观看一区| 视频一区二区中文字幕| 视频一区视频二区中文| 午夜精彩视频在线观看不卡| 亚洲成人av在线电影| 亚洲制服丝袜av| 亚洲综合成人在线| 亚洲成人免费在线观看| 日韩高清不卡一区| 精品一区二区三区av| 韩日精品视频一区| 国产91精品精华液一区二区三区| 国产v日产∨综合v精品视频| 不卡视频一二三| 91亚洲永久精品| 欧美吞精做爰啪啪高潮| 欧美一区二区三区性视频| 欧美不卡123| 欧美经典一区二区| 中文字幕在线视频一区| 亚洲免费在线视频一区 二区| 亚洲欧美一区二区不卡| 亚洲国产va精品久久久不卡综合| 亚洲成人精品影院| 美女脱光内衣内裤视频久久影院| 国模无码大尺度一区二区三区| 国产91丝袜在线18| 在线观看一区日韩| 日韩亚洲欧美综合| 国产清纯美女被跳蛋高潮一区二区久久w| 国产日产亚洲精品系列| 一区二区在线观看av| 青青草精品视频| av在线免费不卡| 欧美日韩激情在线| 国产午夜一区二区三区| 亚洲激情男女视频| 国产精品综合一区二区| 一道本成人在线| 精品国产三级电影在线观看| 国产精品视频免费| 秋霞影院一区二区| 色综合久久综合网| 日韩精品一区二区在线观看| 国产精品国产三级国产aⅴ无密码| 亚洲一区二区三区影院| 国产美女视频一区| 欧美午夜在线观看| 国产女主播视频一区二区| 视频在线观看91| 色综合天天综合网国产成人综合天| 日韩欧美中文字幕公布| 一区二区三区日本| 成人一区二区三区中文字幕| 精品国精品自拍自在线| 午夜私人影院久久久久| 成人黄色在线看| 337p粉嫩大胆噜噜噜噜噜91av| 亚洲黄色av一区| 99久久久国产精品免费蜜臀| 亚洲精品一区二区精华| 日韩中文字幕一区二区三区| 一本一本大道香蕉久在线精品| 久久久精品一品道一区| 青青国产91久久久久久| 欧美欧美午夜aⅴ在线观看| 怡红院av一区二区三区| 91视视频在线观看入口直接观看www| 精品欧美乱码久久久久久1区2区| 亚洲国产一区二区在线播放| 99精品桃花视频在线观看| 国产日韩欧美一区二区三区乱码 | 国产日产精品1区| 久久精品国产久精国产爱| 欧美视频日韩视频| 性做久久久久久免费观看欧美| 在线免费观看日本一区| 亚洲影院免费观看| 欧美军同video69gay| 午夜欧美在线一二页| 欧洲精品一区二区三区在线观看| √…a在线天堂一区| 色综合天天综合| 亚洲男人的天堂在线aⅴ视频 | 欧美一区二区三区男人的天堂| 亚洲高清中文字幕| 在线91免费看| 精久久久久久久久久久| 国产性天天综合网| av成人动漫在线观看| 亚洲狼人国产精品| 欧美美女视频在线观看| 日本一道高清亚洲日美韩| 日韩精品一区国产麻豆| 成人性生交大片免费看在线播放 | 国产精品免费av| 成人av电影在线网| 一区二区理论电影在线观看| 欧美日韩三级在线| 日本大胆欧美人术艺术动态| 久久久久久**毛片大全| 91麻豆swag| 免费久久精品视频| 久久久激情视频| 色菇凉天天综合网| 欧美bbbbb| 亚洲日本乱码在线观看| 91精品啪在线观看国产60岁| 国产在线播放一区| 一二三区精品福利视频| 日韩欧美国产1| 91欧美激情一区二区三区成人| 亚洲成国产人片在线观看| 精品噜噜噜噜久久久久久久久试看| 国产福利视频一区二区三区| 一级日本不卡的影视| 精品国产不卡一区二区三区| 99re热这里只有精品视频| 日韩福利视频导航| 国产精品传媒视频| 欧美成人三级在线| 一本久久a久久免费精品不卡| 久久91精品久久久久久秒播| 亚洲色图另类专区| 久久一夜天堂av一区二区三区| 一本大道久久a久久精二百| 久久99精品久久久久久国产越南| 亚洲欧美日韩国产手机在线| 精品国精品自拍自在线| 欧美日韩一区二区三区四区五区| 国产高清久久久久| 日韩精品一卡二卡三卡四卡无卡| 亚洲欧洲日产国产综合网| 精品国产自在久精品国产| 欧洲亚洲国产日韩| 91蜜桃网址入口| 国产一区二区三区在线看麻豆| 伊人夜夜躁av伊人久久| 国产日产欧美一区| 欧美电视剧在线观看完整版| 在线观看视频欧美| 成年人国产精品| 国产精品66部| 韩国一区二区在线观看| 男人的天堂久久精品| 亚洲第一福利一区| 亚洲一级电影视频| 一区二区三区中文免费| 国产精品久久久久久久久免费樱桃 | 亚洲色图丝袜美腿| 中文字幕一区免费在线观看 |