无法在php中访问数组内的对象
我希望访问数组中的对象数组的示例格式如下所示无法在php中访问数组内的对象,php,arrays,object,Php,Arrays,Object,我希望访问数组中的对象数组的示例格式如下所示 Array ( [0] => stdClass Object ( [id] => 1 [user_id] => 3 [adminid] => 1 [payment_value] => ) [1] => stdClass Object (
Array
(
[0] => stdClass Object
(
[id] => 1
[user_id] => 3
[adminid] => 1
[payment_value] =>
)
[1] => stdClass Object
(
[id] => 2
[user_id] => 3
[adminid] => 2
[payment_value] =>
)
[2] => stdClass Object
(
[id] => 3
[user_id] => 4
[adminid] => 3
[payment_value] =>
)
)
从上面的数组中,我希望获取所有的用户id,在这个数组中,它将是:
3
3
4
但正如您所看到的,在这两个对象中,user_id的值是相同的,因此在本例中,我想进一步过滤,只取1个值,因此我希望从数组中得到的最终结果应该是
3
4
我不知道如何消除重复值,但是我试图使用的代码是
print_r($rdata) // this gives the above sample array
foreach ($rdata as $key)
{
$userid = $key->user_id;
$this->db->where('id',$userid);
$query = $this->db->get('user');
return $query->result();
}
通过使用上面的代码,我只得到值3作为结果,但是我想要3和4
$data_collection = [
(object)[
"id" => 1,
"user_id" => 3,
"adminid" => 1,
"payment_value" =>""
],
(object)[
"id" => 2,
"user_id" => 3,
"adminid" => 2,
"payment_value" =>""
],
(object)[
"id" => 3,
"user_id" => 4,
"adminid" => 3,
"payment_value" =>""
]
];
$user_id= [];
$i=0;
foreach ($data_collection as $single_data) {
$user_id[$i]= $single_data->user_id;
$i++;
}
$user_id = array_unique($user_id);
/**
* I don't knwo what this code does to you
*/
$data_to_be_returned = [];
foreach ($user_id as $single_user_id) {
$this->db->where('id',$single_user_id);
$query = $this->db->get('user');
$data_to_be_returned = [$single_user_id => $query->result()];
}
不能在foreach循环中返回