PHP判斷JSON對(duì)象是否存在的方法(推薦)

字號(hào):


    在實(shí)際測(cè)試中php讀取json數(shù)組時(shí) 使用簡(jiǎn)單的 if 或者 array_key_exists 去判斷對(duì)象是否存在是會(huì)報(bào)錯(cuò)的,以下是google搜尋的正確判斷方法
    實(shí)際上出現(xiàn)報(bào)錯(cuò)只是我對(duì)php還不是很精通 因此可能我認(rèn)為正確的判斷方法同樣不是最完美的解決方法甚至是錯(cuò)誤的 此篇博文留作自用
    錯(cuò)誤代碼:
    $structure = imap_fetchstructure($connection, $id, FT_UID);
    if (array_key_exists('parts', $structure))
    {
    }
    會(huì)出現(xiàn)報(bào)錯(cuò) Warning: array_key_exists() expects parameter 2 to be array, boolean given
    正確的解決方案是:
    if (is_array($structure) && array_key_exists('parts', $structure)) { //...magic stuff here }
    而還有一種就是使用 isset 來(lái)直接判斷:
    if(isset($structure['parts']))
    {
    } 
    //這個(gè)函數(shù)用來(lái)測(cè)試變量是否已經(jīng)配置。若變量已存在則返回 true 值。其它情形返回 false 值。
    //因此需要若變量存在且值不為NULL,才返回 TURE
    以上所述是小編給大家介紹的PHP判斷JSON對(duì)象是否存在的方法(推薦),希望對(duì)大家有所幫助.