我的数组看起来像这样:
Array
(
[0] => Array
(
[filename] => Volume Selection
[column_arr] => Array
(
[seq_num] => Array
(
[data_type] => N
)
[user_code] => Array
(
[data_type] => C
[min_char] => 15
)
)
)
[1] => Array
(
[filename] => Job File
[column_arr] => Array
(
[prop_seq_num] => Array
(
[data_type] => N
)
[prop_user_code] => Array
(
[data_type] => C
[min_char] => 15
)
)
)
)
我想从其中的每个条目中获取 column_arr 子数组? 我怎么才能从这个数组中获得那些值
我试过这个
foreach($arr as $key => $value1)
但在这里我只是从子阵列中获取所有值
答案 0 :(得分:3)
使用功能array_column()
。
例如:
$filenames = array_column(myArray, "filename");
foreach ( $filenames as $filename )
echo $filename;
修改您已修改了自己的问题。现在这将成为您的解决方案:
$column_arrs = array_column(myArray, "column_arr");
foreach ( $column_arrs as $key => $column_arr )
echo $key;
答案 1 :(得分:0)
我会回答这个问题,因为没有人可能会这样做。再次被指责回答只是为了得到更多积分,但我不在乎。有一天,每个人都有新的编程。
$array = <your array>;
$filenames = array();
foreach($array as $elem){
if($elem['filename'])
$filenames[] = $elem['filename'];
}
print_r($filenames);
答案 2 :(得分:0)
您可以使用:
foreach($arr as $value) {
echo $value['filename'] . '<br/>';
}
这将打印所有必需的值。
答案 3 :(得分:0)
如果我理解正确的话:
$arr = array( array ( 'filename' => 'Volume Selection',
'column_arr' => array( 'seq_num' => array( 'data_type' => 'N' ) ),
'user_code' => array( 'data_type' => 'C', 'min_char' => '15' )
),
array ( 'filename' => 'Job File',
'column_arr' => array( 'seq_num' => array( 'data_type' => 'N' ) ),
'user_code' => array( 'data_type' => 'C', 'min_char' => '15' )
)
);
foreach( $arr as $subarr )
{
if ( $subarr['filename'] == 'Job File' )
{
print_r( $subarr ) ;
}
}