Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在php中将最后两个数组元素合并为一个数组元素_Php_Arrays_Element - Fatal编程技术网

如何在php中将最后两个数组元素合并为一个数组元素

如何在php中将最后两个数组元素合并为一个数组元素,php,arrays,element,Php,Arrays,Element,我有一个数组正在跟踪 $array = array( 0 => "a,b", 1 => "c,d", 2 => "e,f", 3 => "g,h", ); 我想marge最后两个数组元素2和3在一个数组中如下所示 $array = array( 0 => "a,b", 1 => "c,d", 2 => "e,f,g,h", ); 如何使用PHP实现这一点?简单地说,使用array\u pop

我有一个数组正在跟踪

$array = array(
    0 => "a,b",
    1 => "c,d",
    2 => "e,f",
    3 => "g,h", 
);
我想marge最后两个数组元素2和3在一个数组中如下所示

$array = array(
    0 => "a,b",
    1 => "c,d",
    2 => "e,f,g,h", 
);
如何使用PHP实现这一点?

简单地说,使用array\u pop删除最后2个元素,然后连接它们,然后将它们添加回原始数组

$array = array(
    0 => "a,b",
    1 => "c,d",
    2 => "e,f",
    3 => "g,h", 
);

$element3 = array_pop($array); //grab value of the last element, and remove it from the array.
$element2 = array_pop($array); 

$array[] = "$element2,$element3";

如果它总是被认为是最后两个元素,这将始终有效。

通过阵列拼接移除最后两个项目,并添加其中的内爆项目

$temp = array_splice($array,-2); 
$result = array_merge($array, (array) implode(',', $temp));
正如@Nick提到的,你可以通过

$temp = array_splice($array,-2); 
$array[] = implode(',', $temp);

它总是最后两个元素吗?是的。始终是最后两个元素。这两个答案都包含始终是最后两个元素的情况的解决方案。您已经使用array_splice更改了源数组。这就是为什么我提出我的建议。。。