【发布时间】:2017-10-09 13:44:53
【问题描述】:
我已经阅读了其他问题,没有人回答或帮助我。
这是我的问题,我有一个对象/数组,其中包含一个属性,该属性也是一个对象/数组。
我之前通过以下方式成功访问过类似属性:
$variable[propertyObject][property]
但是,我最近收到了错误注意:未定义索引。
代码如下:
$extensionData = $data['Data'];
echo '<p>' . isset($extensionData['Calories']) ? $extensionData['Calories'] : '' . '</p>';
但是,这仍然会引发相同的错误。即使我检查:
isset($extensionData['Calories']),它总是解析为1/True,这意味着该属性应该存在,那么索引怎么可能是未定义的呢?
当我执行 $extensionData 的 var_dump 或 print_r 时,我得到的是:
Array
(
[Calories] => 295
[WebDesktopImage] => https://clutch-asset-management.s3.amazonaws.com/elevation-burger/IMG_0760-Edit.jpg
[WebMobileImage] => https://clutch-asset-management.s3.amazonaws.com/elevation-burger/IMG_0760-Edit.jpg
[WebDescription] => BLT image
)
【问题讨论】:
-
将
(parentheses)放在您的三元运算周围。可能是搞砸了。 -
@NiettheDarkAbsol 谢谢,但没用,最糟糕的是它通过了 isset 但突然说它是一个未定义的索引
-
这是循环吗?尝试在
echo语句之前写isset($extensionData['Calories']) var_dump($extensionData['Calories']);。 -
我没有尝试内联,而是在函数的开头声明了一个变量,并以某种方式解决了它,非常奇怪。
-
@AnimaSola 请看下面我的回答
标签: php arrays indexing undefined-index