php – 检查是否设置了对象属性 – SimpleXML

我有一些 XML我正在使用 PHP的SimpleXML类,我在XML中有如下元素:
<condition id="1" name="New"></condition>
<condition id="2" name="Used"></condition>

但是它们并不总是存在,所以我需要先检查它们是否存在.

我试过了..

if (is_object($bookInfo->page->offers->condition['used'])) {
    echo 'yes';
}

以及..

if (isset($bookInfo->page->offers->condition['used'])) {
    echo 'yes';
}

但是没有工作.它们仅在我删除属性部分时才起作用.

那么如何检查属性是否设置为对象的一部分?

您正在查看的是属性值.您需要查看属性(本例中的名称)本身:
if (isset($bookInfo->page->offers->condition['name']) && $bookInfo->page->offers->condition['name'] == 'Used')
    //-- the rest is up to you

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...