Php 将嵌套数组转换为关联数组
我的数组看起来像。我正在尝试将其转换为单个关联数组,该数组将包含所有 嵌套嵌套数组的键Php 将嵌套数组转换为关联数组,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我的数组看起来像。我正在尝试将其转换为单个关联数组,该数组将包含所有 嵌套嵌套数组的键 array( (int) 0 => array( 'Size' => array( 'id' => '12', 'name' => 'Mini' ), 'Price' => array( 'price' => '4.35' )
array(
(int) 0 => array(
'Size' => array(
'id' => '12',
'name' => 'Mini'
),
'Price' => array(
'price' => '4.35'
)
),
(int) 1 => array(
'Size' => array(
'id' => '13',
'name' => 'Medium'
),
'Price' => array(
'price' => '6.15'
)
),
(int) 2 => array(
'Size' => array(
'id' => '15',
'name' => 'Maxi'
),
'Price' => array(
'price' => '11.75'
)
)
)
是否有任何函数可以使用这个数组创建一个新的
array(
(int) 0 => array(
'id' => '12',
'name' => 'Mini'
'price' => '4.35'
),
...,
...
)
$result=array\u map($source\u数组,function($item){return array\u flatten($item);})
$result=array\u map($source\u array,function($item){return array\u flatten($item);})
在这种情况下,您可以使用调用用户函数数组()
:
$new_array = array();
foreach($array as $values) {
$new_array[] = call_user_func_array('array_merge', $values);
}
echo '<pre>';
print_r($new_array);
$new_array=array();
foreach($array作为$value){
$new_array[]=调用_user_func_array('array_merge',$values);
}
回声';
打印(新阵列);
在这种情况下,您可以使用
调用用户函数数组()
:
$new_array = array();
foreach($array as $values) {
$new_array[] = call_user_func_array('array_merge', $values);
}
echo '<pre>';
print_r($new_array);
$new_array=array();
foreach($array作为$value){
$new_array[]=调用_user_func_array('array_merge',$values);
}
回声';
打印(新阵列);
对于此特定阵列,您可以使用如下内容:
$new_array = array();
foreach($array as $key=>$data) {
$new_array[$key] = array_reduce( $data,'array_merge',array());
}
echo '<pre>';
print_r($new_array);
echo '</pre>';
对于此特定阵列,您可以使用如下内容:
$new_array = array();
foreach($array as $key=>$data) {
$new_array[$key] = array_reduce( $data,'array_merge',array());
}
echo '<pre>';
print_r($new_array);
echo '</pre>';
$new_array=array();
foreach($key=>$data的数组){
$new_array[$key]=array_reduce($data,'array_merge',array());
}
回声';
打印(新阵列);
回声';
$new_array=array();
foreach($key=>$data的数组){
$new_array[$key]=array_reduce($data,'array_merge',array());
}
回声';
打印(新阵列);
回声';
试试这段代码
$test=array(
(int)0=>数组(
'大小'=>数组(
'id'=>'12',
“名称”=>“迷你”
),
'价格'=>数组(
“价格”=>“4.35”
)
),
(int)1=>数组(
'大小'=>数组(
'id'=>'13',
“名称”=>“中等”
),
'价格'=>数组(
“价格”=>“6.15”
)
),
(int)2=>数组(
'大小'=>数组(
'id'=>'15',
'name'=>'Maxi'
),
'价格'=>数组(
“价格”=>“11.75”
)
)
);
$result=array();
$i=0;
foreach($test as$temp){
$result[$i]=数组(
'id'=>$temp['Size']['id'],
'name'=>$temp['Size']['name'],
'price'=>$temp['price']['price']
);
$i++;
}
回声“;
打印(结果);
试试这段代码
$test=array(
(int)0=>数组(
'大小'=>数组(
'id'=>'12',
“名称”=>“迷你”
),
'价格'=>数组(
“价格”=>“4.35”
)
),
(int)1=>数组(
'大小'=>数组(
'id'=>'13',
“名称”=>“中等”
),
'价格'=>数组(
“价格”=>“6.15”
)
),
(int)2=>数组(
'大小'=>数组(
'id'=>'15',
'name'=>'Maxi'
),
'价格'=>数组(
“价格”=>“11.75”
)
)
);
$result=array();
$i=0;
foreach($test as$temp){
$result[$i]=数组(
'id'=>$temp['Size']['id'],
'name'=>$temp['Size']['name'],
'price'=>$temp['price']['price']
);
$i++;
}
回声“;
打印(结果);