2011-10-05 85 views
1

我有我想篩選出某些鍵的陣列。比方說,$subcats等於這個數組:縮小/濾波陣列

Array 
(
    [0] => stdClass Object 
     (
      [term_id] => 4 
      [term_group] => 0 
      [term_taxonomy_id] => 4 
      [taxonomy] => category 
     ) 

    [1] => stdClass Object 
     (
      [term_id] => 5 
      [term_group] => 0 
      [term_taxonomy_id] => 5 
      [taxonomy] => category 
     ) 

) 

我要的是在它自己的數組term_ids

我試過的foreach和array_values,但我似乎不能在此刻環繞它我的頭。我應該使用array_filter嗎?

所以結果應該是$term_ids = array(4, 5);

回答

1
$termIds = array_map(function($i) { return $i->term_id; }, $subcats); 

這句法需要PHP 5.3+。

+0

我的服務器只有PHP 5.2.14 – gavsiu

+0

然後你可以使用複製['create_function'(http://php.net/create_function)同樣的事情,或者使用一個循環。 – deceze

+0

'function term_id($ i){return $ i-> term_id; } print_r(array_map('term_id',$ subcats));' – gavsiu