首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >PHP :有什么方法可以检查对象是否为null,如果不是,请在一行中调用其方法之一?

PHP :有什么方法可以检查对象是否为null,如果不是,请在一行中调用其方法之一?
EN

Stack Overflow用户
提问于 2019-04-22 04:53:44
回答 1查看 728关注 0票数 0

我正在做一个应用程序( Swift中的客户端和PHP中的服务器)。我想知道在PHP中是否有任何方法可以像Swift那样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
myInstanceOrNil?.mymethod()

如果myInstanceOrNil不是零,则调用我的方法;如果myInstanceOrNil为零,则返回零。

在我的php服务器中,我必须返回几个可选信息(例如,用户可能有一个与facebook帐户相关联的,也许不是),

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$member = new Member($id);   

echo json_encode([ 
    "id" => $member->getId(), 
    "fbId" => $member->getFbInformationsInstanceOrNull()->getFbId()
])

这里的问题是,如果getFbInformationsInstanceOrNull()由于用户没有关联的fb帐户而返回null,它将产生一个错误,因为null->getFbId()不存在。在斯威夫特,我只需要做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$member.getFbInformationsInstanceOrNull?().getFbId()

如何在PHP中轻松地完成这个任务?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-22 04:56:53

为此你需要empty

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$fbId = $member->getFbInformationsInstanceOrNull();
if(!empty($fbId)){
echo json_encode([ 
    "id" => $member->getId(), 
    "fbId" =>  $fbId->getFbId()]);
}

如果没有id关联,代码将不会执行,您可能需要向用户显示一些消息或相应地更新业务。

如果您也想传递null,您可以这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$fbId = $member->getFbInformationsInstanceOrNull();
echo json_encode([ 
        "id" => $member->getId(), 
        "fbId" =>  empty($fbId)?null:$fbId->getId() ]);
}

以下值被认为是空的:

  • "“(空字符串)
  • 0 (0作为整数)
  • 0.0 (0作为浮点数)
  • "0“(0作为字符串)
  • 错误
  • 数组()(空数组)

阅读更多关于empty 这里的信息

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55794753

复制
相关文章
解惑 | 为什么我根据时间戳获得的offset为空呢?
最近有一个需求,要查询某一时间戳对应的offset值,于是就想到了使用 ./bin/kafka-run-class.sh kafka.tools.GetOffsetShell --time <timestamp> ,但是我在测试的时候,发现有的时间戳会获取不到offset,是空。但是明明指定的时间戳有上报数据,肯定有对应的 offset 的。于是就谷歌,找到了这篇帖子:
create17
2020/09/24
2.8K0
dropdownlist控件的几个属性selectedIndex、selectedItem、selectedValue、selectedItem.Text、selectedItem.value的区别…
1. selectedIndex——指的是dropdownlist中选项的索引,为int,从0开始,可读可写
全栈程序员站长
2022/11/03
8230
dropdownlist控件的几个属性selectedIndex、selectedItem、selectedValue、selectedItem.Text、selectedItem.value的区别…
【我们一起写框架】MVVM的WPF框架(三)—数据控件
这世上,没人能一次性写出完美无缺的框架;因为,任何一个框架都需要项目的淬炼,然后才能升华,趋近完美。
Kiba518
2018/09/28
2.4K0
【我们一起写框架】MVVM的WPF框架(三)—数据控件
【愚公系列】2023年09月 WPF控件专题 ComboBox控件详解
WPF控件是Windows Presentation Foundation(WPF)中的基本用户界面元素。它们是可视化对象,可以用来创建各种用户界面。WPF控件可以分为两类:原生控件和自定义控件。
愚公搬代码
2023/09/25
1.2K0
UrlReferrer为空的问题?
官方解释:获取有关客户端上次请求的 URL 的信息,该请求链接到当前的 URL。 1.也就是说,如果用Request.Redirect之后,再用Request.UrlReferrer是得不到前一个页面的链接的,因为这不是客户端的请求。 2.既然服务端不行,那换个思路:在客户端用js导航如何?比如下面这样 A.aspx上用window.location='B.aspx' 但实践证明在B.aspx上用Request.UrlReferrer仍然为空,即js导航也不行! 3.用A链接试一下 A.aspx上写一段ht
菩提树下的杨过
2018/01/23
2.4K0
jq 判断是否为空,为空隐藏指定 div
<style>.mydiv{ width:300px; height:300px; background:red;}</style> <div class="mydiv">     <div class="content">          这是一句话,删除的话会让 mydiv display:none;          </div> </div> <script src="https://lib.baomitu.com/jquery/3.4.1/jquery.min.js"></script> <sc
Savalone
2020/02/11
7.1K0
java判断空对象为空_Java判断对象是否为空(包括null ,””)的方法[通俗易懂]
public static boolean isEmpty(Object obj)
全栈程序员站长
2022/06/25
7K0
C#自定义泛型类绑定ComboBox控件
C# WinForm ComboBox 自定义数据项 (ComboBoxItem )
跟着阿笨一起玩NET
2018/09/18
1.6K0
为什么我不建议你用去 “ ! = null " 做判空?
最终,项目中会存在大量判空代码,多么丑陋繁冗!如何避免这种情况?我们是否滥用了判空呢?
用户9239674
2022/01/22
1K0
silverlight中如何得到ComboBox的选中值(SelectedValue)?
用惯了Asp.Net中的ComboBox和ListBox,想当然的以为SL/Winform/WPF中的ComboBox也应该有类似SelectedValue的属性,但是结果很遗憾,木有! 不过,这个问
菩提树下的杨过
2018/01/23
1.3K0
IOS数组为空的处理
某些情况下,后台可能由于各种原因,对某个字段返回了null值,这时我们取到的就是[NSNull null]这样一个对象,再比如说,后台可能对某一个数据取值,但取到了0个,这时返回的是一个空组,我们取到的就是@[],空组。 取到的array是一个NSNull对象。 NSNull是一个特殊的类,它和nil一样,也代表空值,但二者有区别,NSNull不接收NSArray的那些方法,它只有一个类方法: 因此判断数组是否为空,需要对各种情况都进行判断。 比如这种情况: ( "<null>", "<null>",
rectinajh
2018/05/17
3.4K0
python判断是否为空_python 判断对象是否为空
在实际的工作当中,我们难免要与空值打交道,相信不少初学者都会写出下面的代码:if a is None:
全栈程序员站长
2022/07/01
10.5K0
win10 uwp 相机的分辨率设置方法
在 UWP 中可以使用 WinRT 提供的 Win10 特有的 API 用来捕获摄像机的内容,支持很多格式的硬件解码,性能会比 Win32 好特别多。我使用了 UWP 版本的和 WPF 基于 DirectShow 的版本进行性能对比
林德熙
2021/01/04
1.4K0
java 对象为空判断_java中判断对象是否为空的方法
首先,直接使用 object == null 去判断,对象为null的时候返回true,不为null的时候返回false。然后,在object != null 为true的情况下,进一步去判断对象的所有属性是否为null。
全栈程序员站长
2022/08/15
11.5K0
java 对象为空判断_java中判断对象是否为空的方法
java如何判断对象为空_java对象如何判断是否为空
在实际书写代码的时候,经常会因为对象为空,而抛出空指针异常java.lang.NullPointerException。
全栈程序员站长
2022/06/25
13.4K0
java如何判断对象为空_java对象如何判断是否为空
007 C# Word批量转Pdf
this.comboBox1.SelectedItem.ToString()是指comboBox1选取下拉列表内容。
职场编码
2020/05/30
1.2K0
007 C# Word批量转Pdf
WPF 省市县3级联动
请看前台代码,最重要的是通过省选择的元素来作为下一级的数据,于是选择第一个修改时,就会自动联动
林德熙
2022/08/04
1.1K0
WPF 省市县3级联动
请看前台代码,最重要的是通过省选择的元素来作为下一级的数据,于是选择第一个修改时,就会自动联动
林德熙
2018/09/19
2.1K0
vue 对象判断为空_Vue中可用的判断对象是否为空的方法
vue有两个方法可用 1. JSON.stringify(evtValue)=='{}’ 2. Object.keys(xxx).length==0 js判断对象是否为空对象的几种方法 1.将json对象转化为json字符串,再判断该字符串是否为”{}” var data = {}; var b = (JSON.stringify(data) == “{}”); alert(b);//true 2.for in 循环判断 var obj = {}; var b =…
全栈程序员站长
2022/08/12
6.2K0
JavaScript中为空判断
摘要总结:本文介绍了JavaScript中为空判断的不同情况,包括判断字符串是否为空、变量是否被定义和初始化过。通过这些判断,可以帮助开发人员编写更加健壮的代码。
林老师带你学编程
2018/01/03
3.9K0

相似问题

C++中与内存管理相关的查询

40

从设计模式获取与malloc相关的错误: malloc / free /malloc/ free

21

与C++中的指针相关

20

c++相关查询中的类原型

11

与活动相关的查询

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文