Php 从多维数组中获取值

Php 从多维数组中获取值,php,arrays,cakephp,multidimensional-array,Php,Arrays,Cakephp,Multidimensional Array,我尝试了很多东西,但都没有结果,非常感谢您的帮助 多谢各位 Array ( [0] => Array ( [Toolrepos] => Array ( [id] => 28 [created] => 2014-12-13 [tool_type] => new1 [tool_partnum] =>

我尝试了很多东西,但都没有结果,非常感谢您的帮助 多谢各位

Array ( 

[0] => Array ( [Toolrepos] => 
            Array ( 
                [id] => 28 
                [created] => 2014-12-13 
                [tool_type] => new1 
                [tool_partnum] => new3 
                [tool_vernum] => 57.0.5 
                [box_id] => 28 
                [request_date] => 2014-12-14 
                [delivered_date] => 2014-12-14 ) ) 

[1] => Array ( [Toolrepos] => 
            Array ( 
                [id] => 29 
                [created] => 2014-12-13 
                [tool_type] => new4 
                [tool_partnum] => new5 
                [tool_vernum] => 1.2.56 
                [box_id] => 28 
                [request_date] => 2014-12-14 
                [delivered_date] => 2014-12-14 ) ) 

[2] => Array ( [Toolrepos] => 
            Array ( [id] => 29 
                [created] => 2014-12-13 
                [tool_type] => SeatApp 
                [tool_partnum] => sw2 
                [tool_vernum] => 1.1.2 
                [box_id] => 34 
                [request_date] => 2014-12-13 
                [delivered_date] => 2014-12-13 ) ) )
我需要如下输出

if box_id = '28' then i need their corresponding values for 'created','tool_type','tool_vernum'. Sometimes I need only 'created' value for matching box_id. Thank you
$box28s = array();
$i=0;
if (! empty($arr)) {
    foreach ($arr as $elem) {
        $curr = ! empty($elem['Toolrepos']) ? $elem['Toolrepos'] : NULL;
        if (! empty($curr)) {
            foreach ($curr as $k => $v) {
                if ($k == 'id' && $v == 28) {
                    $box28s[$i] = $curr;
                }
            }
        }
        ++$i;
    }
}