获取PHP中最内部的数组
下面显示的是我从表格中发布的数据。因为我使用了多种形式的方法,所以我将发布的数据作为一个数组。我想将每个值保存到数据库中,例如1、2、3等,因为它是属性“自_值”的值。如何从中仅获取作为数组的值获取PHP中最内部的数组,php,Php,下面显示的是我从表格中发布的数据。因为我使用了多种形式的方法,所以我将发布的数据作为一个数组。我想将每个值保存到数据库中,例如1、2、3等,因为它是属性“自_值”的值。如何从中仅获取作为数组的值 Array ( [0] => Array ( [some_value] => Array ( [0] => 1 ) ) [1] => Array ( [some_value] => Array ( [0] => 2 ) ) [2] =>
Array (
[0] => Array ( [some_value] => Array ( [0] => 1 ) )
[1] => Array ( [some_value] => Array ( [0] => 2 ) )
[2] => Array ( [some_value] => Array ( [0] => 3 ) )
[3] => Array ( [some_value] => Array ( [0] => 4 ) )
[4] => Array ( [some_value] => Array ( [0] => 5 ) )
[5] => Array ( [some_value] => Array ( [0] => 6 ) )
[6] => Array ( [some_value] => Array ( [0] => 7 ) )
)
我想让它像
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 )
我该怎么做
我试着
$x=implode('',$array);
但是它给了我一个数组到字符串的转换错误。试试这个:
function array_flatten($array) {
$return = array();
foreach ($array as $key => $value) {
if (is_array($value)){ $return = array_merge($return, array_flatten($value));}
else {$return[$key] = $value;}
}
return $return;
}
$array = array (
array ( "some_value" => array ( 1 ) ),
array ( "some_value" => array ( 2 ) ),
array ( "some_value" => array ( 3 ) ),
array ( "some_value" => array ( 4 ) ),
array ( "some_value" => array ( 5 ) ),
array ( "some_value" => array ( 6 ) ),
array ( "some_value" => array ( 7 ) )
);
$result = array_flatten($array);
echo "<pre>";
print_r($result);
你喜欢这样吗
$new_arr= array();
foreach($arr as $k=>$arr1)
{
$new_arr[]=$arr1['some_value'][0];
}
print_r($new_arr);
首先,让我们看看你尝试了什么?借助loopI尝试了内爆和数组映射功能。但它给了我一个数组到字符串的转换error@DencyGB:使用
array_-map()
,类似于:$res=array_-map(函数($item){return$item['some_-value'][0];},$arr)代码>请查看我的问题请解释-1以便我可以更改/改进/删除答案这很好,不知道为什么被否决+1.这不是我的反对票,但我认为递归函数对于像这样简单的东西来说太过了。@AmalMurali:我的意思是可以有更多的“内部数组”+1来查看“更多内部数组”!:-)您不需要为每个人设置第二个,$new\u arr[]=$arr1['some\u value'][0]
就可以了。请看:@FDL谢谢我编辑了我的答案
<?php
$arr=Array (
0 => Array ( 'some_value' => Array ( 0 => 1 ) ),
1 => Array ( 'some_value' => Array ( 0 => 2 ) ),
2 => Array ( 'some_value' => Array ( 0 => 3 ) ),
3 => Array ( 'some_value' => Array ( 0 => 4 ) ),
4 => Array ( 'some_value' => Array ( 0 => 5 ) ),
5 => Array ( 'some_value' => Array ( 0 => 6 ) ),
6 => Array ( 'some_value' => Array ( 0 => 7 ) )
);
$new_arr= array();
foreach($arr as $arr1)
{
foreach($arr1['some_value'] as $v){
$new_arr[]=$v;
}
}
print_r($new_arr);
$new_arr= array();
foreach($arr as $k=>$arr1)
{
$new_arr[]=$arr1['some_value'][0];
}
print_r($new_arr);
<?php
$data = array(
array('some_value' => array(1) ),
array('some_value' => array(2) ),
array('some_value' => array(3) ),
array('some_value' => array(4) ),
array('some_value' => array(5) ),
array('some_value' => array(6) ),
array('some_value' => array(7) ),
);
$output = array();
foreach($data as $k => $v)
{
$output[$k] = $v['some_value'][0];
}
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => 7
)