【问题标题】:Laravel array merge 3 arraysLaravel 数组合并 3 个数组
【发布时间】:2021-05-23 07:13:11
【问题描述】:

我有 3 个数组需要合并,但不知道如何合并?

array 1

array:4 [▼
  0 => "admin98@wassiah.test"
  1 => "admin69@wassiah.test"
  2 => "admin25@wassiah.test"
  3 => null
]

array 2

array:4 [▼
  0 => "one"
  1 => "three"
  2 => "two"
  3 => null
]

array 3

array:4 [▼
  0 => "10"
  1 => "11"
  2 => null
  3 => null
]

我需要像这样创建新数组:

array:4 [▼
  0 => array:2 [▼
    "email" => "admin98@wassiah.test"
    "name" => "one"
    "id" => "10"
  ]
  1 => array:2 [▼
    "email" => "admin69@wassiah.test
    "name" => "three"
    "id" => "11"
  ]
  2 => array:2 [▼
    "email" => "admin25@wassiah.test"
    "name" => "two"
    "id" => null
  ]
  3 => array:2 [▼
    "email" => null
    "name" => null
    "id" => null
  ]
]

Code

$mails = $request->input('mails'); // array 1
$names = $request->input('names'); // array 2
$heirIds = $request->input('ids'); // array 3

有什么想法吗?

【问题讨论】:

  • 您的数组是否大小相同?即 arr1 ,arr2 和 arr3 ?
  • @Ajith 是的,它们总是相同的大小
  • 你可以迭代得到你需要的结果,我现在可以提供代码
  • @Ajith 将不胜感激。
  • 遍历项目,使用所需的键和每个数组中的值创建一个新数组

标签: php arrays laravel


【解决方案1】:

你可以试试下面的代码

<?php

$arr1 = array(
"admin98@wassiah.test",
"admin97@wassiah.test",
"admin96@wassiah.test",
"",
);

$arr2 = array(
"one",
"three",
"two",
"",
);

$arr3 = array(
"10",
"11",
"",
"",
);

$result = array();
$count = count($arr1);
for($i=0;$i<$count;$i++){
    $result[$i]['email'] = $arr1[$i];
    $result[$i]['name'] = $arr2[$i];
    $result[$i]['id'] = $arr3[$i];
}



echo '<pre>'; print_r($result);

【讨论】:

  • 就这么简单
猜你喜欢
  • 2019-02-28
  • 2013-08-28
  • 1970-01-01
  • 2020-04-09
  • 2017-03-07
  • 2016-03-08
  • 2016-02-28
  • 2020-08-02
  • 2017-12-23
相关资源
最近更新 更多