-2

我有一个这样的数组:

$a1 = array(
    array('id'=>"1","others"=>"asdhuisah"),
    array('id'=>"4","others"=>"asdhuisah"),
    array('id'=>"213","others"=>"asdhuisah")
);

我想将它的一部分保存到一个新的数组$a2中。

我知道我可以使用循环来做到这一点:

$a2 = array();
foreach($a1 as $key=>$value){
    array_push($a2,$value["id"]);
}

有没有我可以用来一次完成所有这些的功能?

4

3 回答 3

0

试试这个:

$fun_id = function($value){

    return $value["id"];

} ;

$a2 = array_map($fun_id, $a1);
于 2012-08-06T01:42:20.000 回答
0

您可以使用 array_map 和 lambda 函数:

$return_id = function($item) {
  return $item['id'];
};
$ids_array = array_map($return_id, $a1);
于 2012-08-06T01:44:52.213 回答
0

我认为 array_slice http://www.php.net/manual/en/function.array-slice.php可以为你做。

于 2012-08-11T13:04:20.457 回答