在 PHP 中访问具有非法名称的对象属性
在 PHP 中,遇到具有非法属性名称(例如,包含连字符)的对象可能会导致访问它们时面临挑战。让我们通过探索从 API 调用返回的对象中检索 todo-items 属性的情况来解决这个问题。
要访问 todo-items 属性,请直接访问该属性 $object->todo-由于属性名称中的非法字符,项目将失败。相反,我们可以使用以下方法:
1.方括号语法:
echo $object->{'todo-items'};
此语法将属性名称括在大括号内,允许访问包含非法字符的属性。
2.变量插值:
如果属性名称存储在变量中,我们可以使用变量插值来检索它:
$todolist = 'todo-items'; echo $object->$todolist;
3.数组转换:
为了进一步简化对属性的访问,我们可以使用辅助函数将对象转换为数组:
$array = toArray($object); echo $array['todo-items'];
function toArray($object) { $array = []; foreach ($object as $key => $value) { if (is_object($value)) { $array[$key] = toArray($value); } else { $array[$key] = $value; } } return $array; }
以上是如何在 PHP 中访问具有非法名称的对象属性?的详细内容。更多信息请关注PHP中文网其他相关文章!