Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.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_Merge_Slice_Implode - Fatal编程技术网

Php 重新构造数组,将元素从第三个位置连接到数组的末尾,并存储为第三个元素

Php 重新构造数组,将元素从第三个位置连接到数组的末尾,并存储为第三个元素,php,arrays,merge,slice,implode,Php,Arrays,Merge,Slice,Implode,我有这样的阵列: Array( [0] => 85 [1] => 85167920 [2] => ELECTRICAL/ELECTRONIC [3] => DEVICES [4] => FOR [5] => REPELLING [6] => INSECTS [7] => (E.G.MOSQUITOES [8] => ETC) ) Array( [0] =>

我有这样的阵列:

Array(
    [0] => 85
    [1] => 85167920
    [2] => ELECTRICAL/ELECTRONIC
    [3] => DEVICES
    [4] => FOR
    [5] => REPELLING
    [6] => INSECTS
    [7] => (E.G.MOSQUITOES
    [8] => ETC)
)
Array(
    [0] => 85
    [1] => 851680
    [2] => ELECTRIC HEATING RESISTORS
)

我想要这样的阵列:

Array(
    [0] => 85
    [1] => 85167920
    [2] => ELECTRICAL/ELECTRONIC
    [3] => DEVICES
    [4] => FOR
    [5] => REPELLING
    [6] => INSECTS
    [7] => (E.G.MOSQUITOES
    [8] => ETC)
)
Array(
    [0] => 85
    [1] => 851680
    [2] => ELECTRIC HEATING RESISTORS
)

我不确定使用什么方法:合并/合并/推送。
我应该使用什么?

使用
array\u slice()
内爆()

方法:()

输出:

array (
  0 => 85,
  1 => 851680,
  2 => 'ELECTRIC HEATING RESISTORS',
)

这应该很好:

<?php

$a = [
           85, 
           85167920, 
           'ELECTRICAL/ELECTRONIC', 
          'DEVICES', 
           'FOR', 
           'REPELLING', 
           'INSECTS', 
          '(E.G.MOSQUITOES 
           ETC)' 
];
$b = [ 
           85,
           851680,
           'ELECTRIC',
           'HEATING',
           'RESISTORS'
];

$aa = array_slice($a, 0,2);
$aa[] = implode(' ',array_slice($a, 2));

$bb = array_slice($b, 0,2);
$bb[] = implode(' ',array_slice($b, 2));

print_r($aa);
echo '<br>';
print_r($bb);

?>

试试下面的代码

<?php
$array = array();
$temp_array = array();
$temp_str_array=array();
$array[]=85;
$array[]=85167920;
$array[]='ELECTRICAL/ELECTRONIC';
$array[]='DEVICES';
$array[]='FOR';
$array[]='REPELLING';
$array[]='INSECTS';
$array[]='(E.G.MOSQUITOES';
$array[]='ETC)';
foreach($array as $k=>$values){
    if($k<=1){
        $temp_array[$k]=$values;
    }
    else{
        $temp_str_array[]=$values;
    }
    if(count($array)==($k+1)){
        $temp_array[3]=implode(" ",$temp_str_array);
    }
}
echo "<pre>";
print_r($temp_array);
?>

:D:D我是来帮忙的,你有一个流程,我有我的流程。不,你的流程是我先前发布的流程的副本。你的答案是页面膨胀,可能会被进一步否决,因为它是一个迟交的副本。对不起,但我不认为它是一个副本。
<?php
$array = array();
$temp_array = array();
$temp_str_array=array();
$array[]=85;
$array[]=85167920;
$array[]='ELECTRICAL/ELECTRONIC';
$array[]='DEVICES';
$array[]='FOR';
$array[]='REPELLING';
$array[]='INSECTS';
$array[]='(E.G.MOSQUITOES';
$array[]='ETC)';
foreach($array as $k=>$values){
    if($k<=1){
        $temp_array[$k]=$values;
    }
    else{
        $temp_str_array[]=$values;
    }
    if(count($array)==($k+1)){
        $temp_array[3]=implode(" ",$temp_str_array);
    }
}
echo "<pre>";
print_r($temp_array);
?>
Array
(
    [0] => 85
    [1] => 85167920
    [3] => ELECTRICAL/ELECTRONIC DEVICES FOR REPELLING INSECTS 
    (E.G.MOSQUITOES ETC)
)