我想(字符串)数组值加入到单一阵列中,我有一个像下面×3个阵列值:我如何将数组值合并到单个数组中?
Array ([0] => 15 [1] => 16)
Array ([0] => jan [1] => feb)
Array ([0] => 2012 [1] => 2012)
,现在我要像下面在单一阵列中的磁盘阵列:
Array ([0] => 15-jan-2012 [1] => 16-feb-2012)
那么我怎么能在PHP中做到这一点。
我想(字符串)数组值加入到单一阵列中,我有一个像下面×3个阵列值:我如何将数组值合并到单个数组中?
Array ([0] => 15 [1] => 16)
Array ([0] => jan [1] => feb)
Array ([0] => 2012 [1] => 2012)
,现在我要像下面在单一阵列中的磁盘阵列:
Array ([0] => 15-jan-2012 [1] => 16-feb-2012)
那么我怎么能在PHP中做到这一点。
你需要这个自定义代码:太简单了,只需要一个循环来访问每个有索引的数组并存储在一个数组中。
$d = array(15, 16);
$m = array("jan", "feb");
$y = array (2012, 2012);
$final = array();
for($i = 0; $i < count($d); $i++){
$final[] = $d[$i]. "-" .$m[$i]. "-" .$y[$i];
}
print_r($final);
输出:
Array ([0] => 15-jan-2012 [1] => 16-feb-2012)
您可以使用,array_merge_recursive做到这一点,但有一定难度。
努曼谢谢..你救了我的生命,完美地工作,我想要的。 –
@SantoshKhatri,你认为这个答复由#Noman提供吗? –
我无法找到谁给了答案,我只是检查了诺曼编辑所以我认为诺曼给出了答案..所以可能是我错了,你已经给出了答案,所以非常感谢帮助我 –
快速和肮脏的方式,我假定你的每个阵列都具有相同的长度
$a = array ('15','16');
$b = array ('jan','feb');
$c = array ('2012','2012');
$newArray = array();
for($i=0;$i<=count($a);$i++){
$newArray = $a[$i]. "-" .$b[$i]. "-" .$c[$i];
}
echo '<pre>';
print_r($newArray);
echo '</pre>';
都需要这样的一个例如自定义代码:
$arr = [];
$arr1 = [15, 16, 17, ...];
$arr2 = [jan, feb, ...];
$arr3 = [2012, 2012, ...];
for($i=0, $count = count($arr1); i<$count; i++)
{
$arr[] = "$arr1[$i]-arr2[$i]-arr3[$i]";
}
var_dump($arr);
使用array_column获取所需的日期数组,最后使用implode连接它。喜欢的东西
$arr1 = array(15, 16);
$arr2 = array('jan', 'feb');
$arr3 = array(2012, 2012);
$date = array($arr1, $arr2, $arr3);
$dates = array(array_column($date, 0), array_column($date, 1));
$reqDate = array();
foreach ($dates as $dateVal) {
$reqDate[] = implode('-', $dateVal);
}
var_dump($reqDate); //your required output
你可以写这一切一举像这样:
$a = [15, 16];
$b = ['jan', 'feb'];
$c = [2012, 2012];
$dates = array_map(function($arr) {
return implode('-', $arr);
}, array_map(null, $a, $b, $c)));
你尝试什么吗? – Dave
您可能需要自定义代码.. –