Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php将数组行组合成单个数组_Php - Fatal编程技术网

php将数组行组合成单个数组

php将数组行组合成单个数组,php,Php,我有这样的查询结果 Array ( [0] => stdClass Object ( [id] => 1 ) [1] => stdClass Object ( [id] => 2 ) [2] => stdClass Object ( [id] => 3 ) ) 我想取出id值,并将其转换为数组(1,2,3)。这样做的最佳方式是什么。通过它进行每个循环?您可以使用: 正如在的评论中所说,使用匿名函数较短: $arr = ar

我有这样的查询结果

Array ( [0] => stdClass Object ( [id] => 1 ) 
        [1] => stdClass Object ( [id] => 2 ) 
        [2] => stdClass Object ( [id] => 3 ) )
我想取出id值,并将其转换为数组(1,2,3)。这样做的最佳方式是什么。通过它进行每个循环?

您可以使用:

正如在的评论中所说,使用匿名函数较短:

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

使用箭头操作符
->
检索对象值。至于迭代,简单的foreach循环就可以了

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

例如,自PHP 7.0以来,您可以使用:

array_column($array, 'id');
在这种情况下,即使使用对象数组


如果可以将结果作为数组获取,则使用
array\u column()
.PHP 7获取对象属性。可能更简单:
$arr=array\u map($arr,function($v){return$v->id;})
array_column($array, 'id');