在php中从一个元素添加值到另一个元素

时间:2018-01-04 10:23:33

标签: php arrays

这可能是重复的,但我找不到我需要的答案,也许我的措辞是错误的。 无论如何,我有一个包含数百个值的二维数组,我需要的是从第二个元素向第一个元素插入一个值。

实施例

  1. 我在数组中有四个元素:

    [0] = 1, [1] = 9, [2] = 9, [3] =5
    
  2. 我需要把它们放在一个单独的元素中,这样就可以了 进入:[0] = 1995.

  3. 我觉得我可以用foreach做些什么,如果是这样的话,也许有人可以向我详细解释一下这将如何起作用? 要么 也许有一个我不知道的功能。

4 个答案:

答案 0 :(得分:6)

您可以使用implode

来使用以下内容
$arr = [1, 9, 9, 5];
$val = implode($arr);
unset($arr);
$arr[0] = $val;
  

演示: https://ideone.com/VTb7vO

要在整个多维数组上使用implode解决方案,您可以使用以下内容:

$arr = [[1, 9, 9, 5], [1, 9, 9, 6], [1, 9, 9, 7], [1, 9, 9, 8]];

foreach ($arr as $key => $value) {
    $val = implode($value);
    $arr[$key] = $val;
}
  

演示: https://ideone.com/X6vueO

另一个更短的解决方案可能如下:

$arr = [[1, 9, 9, 5], [1, 9, 9, 6], [1, 9, 9, 7], [1, 9, 9, 8]];
$arr = array_map('implode', $arr);
  

演示: https://ideone.com/0ju8he

答案 1 :(得分:1)

要连接每个内部数字数组,您可以在每个数字上使用implode

$newArray = array_map('implode', $array);

如果它在数组[[1, 2, 3], [1, 3], [1, 1, 1]]上执行,它将创建数组['123', '13', '111']demo

答案 2 :(得分:1)

$arr = [2,3,4];
$var = implode($arr, '');
var_dump( $var );

二维:

$cars = array
  (
  array(22,18),
  array(15,13),
  array(5,2),
  array(17,15)
  );

foreach ($cars as $val) {
    $var1 = implode($val, '');
    var_dump( $var1 );
}

答案 3 :(得分:0)

$var= "";
foreach($arr as $element) {
    $var .= $element; 
}