加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP对象isset和/或为空

发布时间:2020-12-13 16:27:56 所属栏目:PHP教程 来源:网络整理
导读:有没有办法检查对象是否有任何字段?例如,我有一个肥皂服务器,我正在使用一个soap客户端查询,如果我调用一个get方法,我或者返回一个对象,包含定义我所做的soap查询的字段的对象,否则返回的对象(stdClass)#3(0 ){}. 有没有办法告诉对象是否有任何东西? publi
有没有办法检查对象是否有任何字段?例如,我有一个肥皂服务器,我正在使用一个soap客户端查询,如果我调用一个get方法,我或者返回一个对象,包含定义我所做的soap查询的字段的对象,否则返回的对象(stdClass)#3(0 ){}.

有没有办法告诉对象是否有任何东西?

public function get($id){
    try{
        $client = new soapclient($this->WSDL,self::getAuthorization());
        $result = $client->__soapCall('get',array('get'=> array('sys_id'=>$id)));
        if(empty($result)){$result = false; }

    }catch(SoapFault $exception){
        //echo $exception;      
        $result = false;
    } 
    return $result;
}//end get()

这个方法应该返回一个对象或者是false,而且我只接收一个没有字段的对象或一个带有字段的对象.

更新以反映当前行为,5/30/12

empty()用于此工作,但是empty()的行为已经改变了几次.一如往常,php文档始终是确切行为的最佳来源,并且对这些页面的评论通常会提供一段时间内更改的良好历史记录.如果你想检查缺少对象属性,那么一个非常防御性的方法是:

if (is_object($theObject) && (count(get_object_vars($theObject)) > 0)) {
    ...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读