Php 从二维数组内爆数据
我认为解决这个问题应该不那么困难,但我找不到解决办法 我试图内爆一个数组,以获得以下结果:Php 从二维数组内爆数据,php,arrays,multidimensional-array,implode,Php,Arrays,Multidimensional Array,Implode,我认为解决这个问题应该不那么困难,但我找不到解决办法 我试图内爆一个数组,以获得以下结果: $new_array = "755, 646, 648, 260, 257, 261, 271, 764, ..." 这是我的阵列: Array ( [0] => Array ( [0] => 755 [1] => 646 ) [1] => Array (
$new_array = "755, 646, 648, 260, 257, 261, 271, 764, ..."
这是我的阵列:
Array
(
[0] => Array
(
[0] => 755
[1] => 646
)
[1] => Array
(
[0] => 648
[1] => 260
[2] => 257
[3] => 261
)
[2] => Array
(
[0] => 271
)
[3] => Array
(
[0] => 764
[1] => 643
[2] => 260
[3] => 263
[4] => 756
[5] => 763
[6] => 762
[7] => 259
[8] => 257
[9] => 758
[10] => 261
[11] => 768
[12] => 757
[13] => 647
)
)
我知道如何使用一个简单的数组执行此操作:
$newarray = implode(", ", $array);
我知道如何获取密钥(使用数组\u密钥
)
我试过使用array\u map
,但目前没有结果
您能帮我指出正确的方向吗?您必须将内部数组合并为一个(如果我们的多维数组名为
$list
),我们可以:
现在,您可以轻松地使其内爆:
$string = implode(', ', $merged);
回显给定字符串将打印:
75564648260 257261271764
要知道多维数组不能内爆,因为它的元素本身就是数组,所以可能会出现数组到字符串的转换
错误,因此我们应该使数组平坦,为此,您还可以检查
另外,要了解阵列减少的方法,请执行以下操作:
使用回调函数迭代地将数组缩减为单个值
使用
array\u walk\u recursive
函数的简单解决方案:
// $arr is your initial array
$new_arr = [];
array_walk_recursive($arr, function($v) use(&$new_arr){ $new_arr[] = $v; });
试试这个:
您可以使用foreach循环完成此操作,如上面所述使用循环:
$array=array(
0=>数组(
'name'=>'John Doe',
'电子邮件'=>'john@example.com'
),
1=>数组(
'name'=>'Jane Doe2',
'电子邮件'=>'jane@example.com2'
),
);
//函数来显示值
函数内爆数据值($array){
$tosinglearray=array();
对于($i=0;$i显示您尝试使用array\u-map()
,您可能离解决方案不远。array\u-map()将为you@Rizier123@SunilPachlangia我已经用array\u map()更新了我的问题
$string = implode(', ', $merged);
// $arr is your initial array
$new_arr = [];
array_walk_recursive($arr, function($v) use(&$new_arr){ $new_arr[] = $v; });
<?php
$array = array
(
array(755,646),
array(648,260,257,261),
array(271),
array(764,643,260,263,756,763,762,259,257,758,261,768,757,647)
);
echo "<pre>";
print_r($array);
foreach ($array as $value) {
$newstring[]=implode(",",$value);
}
echo implode(",",$newstring);
?>
$array = array(
0 => array(
'name' => 'John Doe',
'email' => 'john@example.com'
),
1 => array(
'name' => 'Jane Doe2',
'email' => 'jane@example.com2'
),
);
//function to display values
function ImplodeDataValue($array) {
$tosinglearray=array();
for ($i = 0; $i <= count($array)-1; $i++) {
$tosinglearray[]=implode(',',$array[$i]);
}
return implode(',',$tosinglearray);
}
echo ImplodeDataValue($array);
//returns John Doe,john@example.com,Jane Doe2,jane@example.com2