我有以下数组: -
@orders = Order.includes(:type_logistics).where(status_id:4).select { |o| ([[1],[2],[1,2]].include? o.type_logistics.pluck(:status_id).uniq) || o.type_logistics.count == 0 }.uniq
我希望获得$result = Array
(
[0] => Objects\Update Object
(
[items:protected] => Array(
[update_id] => 500206735
[message] => Objects\Message Object (
[word] =>hello
)
)
)
)
我尝试过: - [word]
但它不起作用。任何想法?
答案 0 :(得分:0)
您不需要方括号来访问对象的属性。尝试:
$result[0]->items['messages']->word
请记住检查属性是否公开,并在访问之前检查属性/数组键以防止错误。
答案 1 :(得分:0)
找到解决方案,
如果数组中有受保护的项目,
要么我们必须在类本身内部声明get方法,要么 首先不要将这些项目声明为受保护的。因此,如果我们制定了get方法,答案就是,
$result[0]->getMessage()->word