微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP std :: Class检查属性是否存在

我使用的是Twitter Search API,它会重新排列一组对象.如果包含[‘media’]数组,我必须检查每个对象.以下是具有媒体属性的对象之一.
object(stdClass)#56 (4) {
  ["hashtags"]=>
  array(2) {
    [0]=>
    object(stdClass)#57 (2) {
      ["text"]=>
      string(9) "katyperry"
      ["indices"]=>
      array(2) {
        [0]=>
        int(62)
        [1]=>
        int(72)
      }
    }
    [1]=>
    object(stdClass)#58 (2) {
      ["text"]=>
      string(8) "katycats"
      ["indices"]=>
      array(2) {
        [0]=>
        int(73)
        [1]=>
        int(82)
      }
    }
  }
  ["urls"]=>
  array(0) {
  }
  ["user_mentions"]=>
  array(1) {
    [0]=>
    object(stdClass)#59 (5) {
      ["screen_name"]=>
      string(13) "perfkatyperry"
      ["name"]=>
      string(7) "KatyCat"
      ["id"]=>
      int(611836599)
      ["id_str"]=>
      string(9) "611836599"
      ["indices"]=>
      array(2) {
        [0]=>
        int(3)
        [1]=>
        int(17)
      }
    }
  }
  ["media"]=>
  array(1) {
    [0]=>
    object(stdClass)#60 (10) {
      ["id"]=>
      int(325747221490434048)
      ["id_str"]=>
      string(18) "325747221490434048"
      ["indices"]=>
      array(2) {
        [0]=>
        int(83)
        [1]=>
        int(105)
      }
      ["media_url"]=>
      string(46) "http://pbs.twimg.com/media/BIVJXz-CAAAHQ8M.jpg"
      ["media_url_https"]=>
      string(47) "https://pbs.twimg.com/media/BIVJXz-CAAAHQ8M.jpg"
      ["url"]=>
      string(22) "http://t.co/RYgQ8Srze5"
      ["display_url"]=>
      string(26) "pic.twitter.com/RYgQ8Srze5"
      ["expanded_url"]=>
      string(66) "http://twitter.com/perfkatyperry/status/325747221486239744/photo/1"
      ["type"]=>
      string(5) "photo"
      ["sizes"]=>
      object(stdClass)#61 (5) {
        ["medium"]=>
        object(stdClass)#62 (3) {
          ["w"]=>
          int(600)
          ["h"]=>
          int(600)
          ["resize"]=>
          string(3) "fit"
        }
        ["thumb"]=>
        object(stdClass)#63 (3) {
          ["w"]=>
          int(150)
          ["h"]=>
          int(150)
          ["resize"]=>
          string(4) "crop"
        }
        ["large"]=>
        object(stdClass)#64 (3) {
          ["w"]=>
          int(1024)
          ["h"]=>
          int(1024)
          ["resize"]=>
          string(3) "fit"
        }
        ["small"]=>
        object(stdClass)#65 (3) {
          ["w"]=>
          int(340)
          ["h"]=>
          int(340)
          ["resize"]=>
          string(3) "fit"
        }
        ["orig"]=>
        object(stdClass)#66 (3) {
          ["w"]=>
          int(1024)
          ["h"]=>
          int(1024)
          ["resize"]=>
          string(3) "fit"
        }
      }
    }
  }
}

我怎样才能做到这一点?

谢谢!

使用循环 property_exists功能
foreach($myArray as $obj)
{
  if(!property_exists($obj,'media') || !is_array($obj->media))
  {
    echo("property 'media' does not exist in $obj");
    // throw exception,fill in default value for media array,set variable,whatever. 
  }
}

原文地址:https://www.jb51.cc/php/138177.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐