2017-01-06 4 views
0

Ich mag unter Objekt zuzugreifen innerhalb eines Arrays ein Beispielformat des Feldes gegeben ist,Nicht in der Lage in PHP-Objekt innerhalb Array zuzugreifen

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] => 
     ) 
) 

aus dem Array oben Ich wünsche alle User_id zu holen, in dieses Array wird es sein:

3 
3 
4 

Aber wie Sie den Wert von user_id, dass in den zwei Objekte sehen kann, ist gleich, so in diesem Fall würde ich weiter filtern möchten und nur 1-Wert, so dass das Endergebnis nehmen, dass Ich möchte aus dem Array sollte

sein
3 
4 

Ich weiß nicht, wie doppelte Werte zu eliminieren jedoch der Code, den ich den ersten Teil zu verwenden, ich versuche zu bekommen, ist

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(); 
    } 

Durch den obigen Code mit i den Wert nur bin immer 3 als Ergebnis jedoch möchte ich 3 und 4

Antwort

0
$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()]; 
} 

Sie können nicht in foreach-Schleife zurückkehren

Verwandte Themen