首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >更正PHP代码以检查变量是否存在

更正PHP代码以检查变量是否存在
EN

Stack Overflow用户
提问于 2011-05-02 07:11:24
回答 4查看 51.2K关注 0票数 24

这段代码是websocket服务器的一部分:

代码语言:javascript
复制
$msgArray = json_decode($msg);
if ($msgArray->sciID) {
  echo "Has sciID";
}

它要么接收像{"sciID":67812343}这样的json字符串,要么接收一个完全不带sciID的json字符串,比如{"something":"else"}

当服务器接收到后者时,它将回显:Notice: Undefined property: stdClass::$sciID in /path/to/file.php on line 10

检查$msgArray->sciID是否存在的正确代码是什么?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-05-02 07:13:10

使用isset作为通用检查(您也可以使用property_exists,因为您正在处理对象):

代码语言:javascript
复制
if (isset($msgArray->sciID)) {
    echo "Has sciID";
}
票数 64
EN

Stack Overflow用户

发布于 2011-05-02 07:14:12

票数 7
EN

Stack Overflow用户

发布于 2014-01-18 02:23:15

如果isset()property_exists()不起作用,我们可以使用array_key_exists()

代码语言:javascript
复制
if (array_key_exists("key", $array)) {
    echo "Has key";
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5852094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档