PHP创建包含值列表中值的多维数组的最有效方法

时间:2018-10-16 12:21:28

标签: php arrays multidimensional-array dynamic

示例

输入是一个字符串数组,类似

$strs = [
  "some string",
  "another string",
  // ...
];

结果应为:

$result = [
  [
     "somestring",
     true
  ],
  [
     "another string",
     true
  ]
];

应用程序将为数据提供者创建一个数组,以在单元测试中测试电话号码。

我可以很容易地在一个循环中完成此操作,但是我想知道是否有一个数组函数。

我的循环解决方案:

$result = [];
foreach($strs as $str) {
    $result[] = [$str, true];
}

1 个答案:

答案 0 :(得分:2)

您可以改用array_map()

$strs = [
  "some string",
  "another string",
  // ...
];
$result = array_map(function($val){
    return [$val, true];
}, $strs);

或结合使用array_map()array_fill()

$result = array_map(null, $strs, array_fill(0, sizeof($strs), true));

demo中查看结果