2016-07-06 10 views
-1

ich Abfrage haben, die mich wie diesesphp kombinieren Array Zeilen in einem einzelnen Array

Array ([0] => stdClass Object ([id] => 1) 
     [1] => stdClass Object ([id] => 2) 
     [2] => stdClass Object ([id] => 3)) 

ich die ID-Wert wollen führen geben, nehmen und drehen, dass in ein Array (1,2,3) statt. Was wäre der beste Weg, dies zu tun? foreach Schleife durch?

+0

Wenn Sie die Ergebnisse als Array holen können Sie 'array_column()' verwenden. – AbraCadaver

Antwort

0

können Sie array_map() verwenden:

function change_it($value) { 
    return $value->id; 
} 
$arr = array_map($arr, "change_it"); 

Wie AbraCadaver in den Kommentaren gesagt, eine anonyme Funktion ist kürzer:

$arr = array_map($arr, function ($v) { 
    return $v->id; 
}); 
+1

Wahrscheinlich einfacher: '$ arr = array_map ($ arr, funktion ($ v) {return $ v-> id;});' – AbraCadaver

0

Pfeil Operator -> Objektwert abzurufen. Wie für die Iteration kann einfache foreach-Schleife tun.

array_column($array, 'id'); 

in diesem Szenario auch mit Array von Objekten:

foreach ($array as $arr) { 
    echo $arr->id . PHP_EOL; 
} 

Beispiel kann https://3v4l.org/f1SIN

Verwandte Themen